分布式
文章平均质量分 76
_从头再来_
不积跬步无以至千里
展开
-
k8s安装traefik作为ingress
一、先来介绍下IngressIngress 这个东西是 1.2 后才出现的,通过 Ingress 用户可以实现使用 nginx 等开源的反向代理负载均衡器实现对外暴露服务,以下详细说一下 Ingress,毕竟 traefik 用的就是 Ingress使用 Ingress 时一般会有三个组件: 反向代理负载均衡器 Ingress Controller Ingre...原创 2019-12-21 17:35:55 · 1002 阅读 · 0 评论 -
Kafka史上最详细原理总结
KafkaKafka是最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于hadoop的批处理系统、低延迟的实时系统、storm/Spark流式处理引擎,web/nginx日志、访问日志,消息服务等等,用scala语言编写,Link...转载 2018-06-30 00:26:41 · 240 阅读 · 0 评论 -
Kafka传递自定义对象
1、搭好相应的环境(ZK+kafka),保证kafka能正常的发送接收消息 2、新建一个工具类,负责对象字节数组的相互转换,传输数据用package com.kafka.util;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;impor...转载 2018-07-03 00:10:36 · 909 阅读 · 0 评论 -
Oralce GoldenGate与Kafka集群集成
本文介绍如何配置Oracle GoldenGate 同步数据到Kafka,包括OGG源端安装配置,OGG for Big Data replication安装配置,以及如何与Kafka集群集成。软件准备1. Oracle11.2.0.22. Oracle GoldenGate V12.2.0.1.1 for Oracleon Linux x86-64部署在Oracle Server上。3....转载 2018-07-07 08:26:02 · 597 阅读 · 0 评论 -
使用ogg同步数据给kafka
为更好的配合公司自然人项目的实施,我利用虚机搭了一个测试环境,把生产库中的部分表的数据通过ogg软件同步给kafka1 测试环境说明1)目标源数据库hr用户下的一张表t1,当发生dml操作时,操作数据写到kafka集群里,并显示出来。2)环境构成192.168.60.88 tdb1192.168.60.89 reps192.168.60.91 kafka01192.168.60.92 kafka0...转载 2018-07-07 08:31:55 · 1392 阅读 · 0 评论 -
ORACLE 之间的OGG配置
OGG source和target环境:soucesource端:操作系统版本:Linux 2.6.9-89.EL x86_64hostname:dg1数据库版本:10.2.0.1 64bitogg版本:fbo_ggs_Linux_x64_ora10g_64bit.tarrac数据库名:WENDINGIP:192.168.1.1target端:操作系统版本:Linux 2.6.9-89.EL ...转载 2018-07-07 08:34:17 · 6479 阅读 · 0 评论 -
利用ogg实现oracle到kafka的增量数据实时同步
前言ogg即Oracle GoldenGate是Oracle的同步工具,本文讲如何配置ogg以实现Oracle数据库增量数据实时同步到kafka中,其中同步消息格式为json。 下面是我的源端和目标端的一些配置信息:-版本OGG版本ip别名源端OracleRelease 11.2.0.1.0Oracle GoldenGate 11.2.1.0.3 for Oracle on Linux x86-6...转载 2018-07-07 08:36:53 · 4272 阅读 · 2 评论 -
Kafka传递自定义对象
1、搭好相应的环境(ZK+kafka),保证kafka能正常的发送接收消息 2、新建一个工具类,负责对象字节数组的相互转换,传输数据用package com.kafka.util;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;impor...转载 2018-07-07 08:39:12 · 2468 阅读 · 0 评论 -
rabbitmq介绍及rabbitmq在java中基础使用
RabbitMQ简介RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统。它可以用于大型软件系统各个模块之间的高效通信,支持高并发,支持可扩展。使用Erlang语言编写。RabbitMQ相关术语: 1.Broker:简单来说就是消息队列服务器实体。 2.Exchange:消息交换机,它指定消息按什么规则,路由到哪个队列。 3.Q...转载 2018-10-25 23:06:39 · 849 阅读 · 0 评论 -
基于rabbitMQ实现在高并发下性能倍增
以服务与服务之间的调用来举个例子,比如我们提供的是rest服务,那么如果在高并发下访问rest服务究竟能支撑多大的并发量呢?下面我先提供一个小例子来测试下项目目录结构如下:具体代码如下:UserController.javapackage com.cwh.controller;import org.springframework.beans.factory.annotatio...转载 2018-10-30 00:28:03 · 1075 阅读 · 0 评论 -
spring + redis 实现数据的缓存
spring + redis 实现数据的缓存1、实现目标 通过redis缓存数据。(目的不是加快查询的速度,而是减少数据库的负担) 2、所需jar包 注意:jdies和commons-pool两个jar的版本是有对应关系的,注意引入jar包是要配对使用,否则将会报错。因为commons-pooljar的目录根据版本的变化,目录结构会变。前面的版本是org.apache...转载 2018-10-25 00:06:25 · 275 阅读 · 0 评论 -
LVS NAT/TUN/DR三种模式比较
LVS共有三种模式,优缺点比较如下:NAT模式优点:集群中的物理服务器可以使用任何支持TCP/IP操作系统,物理服务器可以分配Internet的保留私有地址,只有负载均衡器需要一个合法的IP地址。不足:扩展性有限。当服务器节点(普通PC服务器)数据增长到20个或更多时,负载均衡器将成为整个系统的瓶颈,因为所有的请求包和应答包都需要经过负载均衡器再生。假使TCP包的平均长度是536字节的话...原创 2018-01-23 15:40:49 · 1450 阅读 · 0 评论 -
lvs、haproxy、nginx 负载均衡的比较分析
对软件实现负载均衡的几个软件,小D详细看了一下,从性能和稳定上还是LVS最牛,基本达到了F5硬件设备的60%性能,其他几个10%都有点困难。 不过就因为LVS忒牛了,配置也最麻烦了,而且健康检测需要另外配置Ldirector,其他HAPROXY和NGINX自己就用,而且配置超级简单。 所以小D建议,如果网站访问量不是门户级别的用HAPROXY或...转载 2018-01-12 15:16:06 · 150 阅读 · 0 评论 -
LVS DR TUN(IP Tunneling)介绍
通过IP隧道实现虚拟服务器(VS/TUN) 在VS/NAT 的集群系统中,请求和响应的数据报文都需要通过负载调度器,当真实服务器的数目在10台和20台之间时,负载调度器将成为整个集群系统的新瓶颈。大多数 Internet服务都有这样的特点:请求报文较短而响应报文往往包含大量的数据。如果能将请求和响应分开处理,即在负载调度器中只负责调度请求而响应直 接返回给客户,将极大地提高整个集群系统的吞吐...原创 2018-01-23 15:35:29 · 308 阅读 · 0 评论 -
使用LVS实现负载均衡原理及安装配置详解
负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群。常用的负载均衡开源软件有nginx、lvs、haproxy,商业的硬件负载均衡设备F5、Netscale。这里主要是学习 LVS 并对其进行了详细的总结记录。一、负载均衡LVS基本介绍 LB集群的架构和原理很简单,就是当用户的请求过来时,会直接分发到Director Server上,然后它把用户的请求根...转载 2018-01-12 14:49:01 · 216 阅读 · 0 评论 -
Pinpoint分布式系统性能监控工具
Pinpoint分布式性能监控工具(docker安装)在做性能压测的时候,你是不是有只能看到测试报告?在做性能压测的时候,你是不是想知道每一个方法执行了多长时间?Pinpoint几乎可以帮助你查看你想看到的每一个细节。Pinpoint是什么?Pinpoint是一款全链路分析工具,提供了无侵入式的调用链监控、方法执行详情查看、应用状态信息监控等功能。基于GoogleDapp...原创 2019-03-19 19:53:04 · 71672 阅读 · 2 评论 -
Mycat实现MySQL的分库分表、读写分离、主从切换
为了加深对DRDS整体架构的认识,我觉得有必要手工搭建基于Mycat实现的Mysql分布式数据库集群,现和大家分享下搭建流程,后续会针对Mycat的各项配置作进一步研究,敬请期待。Mycat及MySQL实例部署情况:Mycat:IP:10.20.8.57,Port:3310/3311MySQL :db1-M1,IP:10.20.8.126,Port:3306db1-M2,IP:10.20...转载 2019-05-12 22:14:55 · 406 阅读 · 0 评论 -
Mycat实现读写分离、分表分库
系统开发中,数据库是非常重要的一个点。除了程序的本身的优化,如:SQL语句优化、代码优化,数据库的处理本身优化也是非常重要的。主从、热备、分表分库等都是系统发展迟早会遇到的技术问题问题。Mycat是一个广受好评的数据库中间件,已经在很多产品上进行使用了。希望通过这篇文章的介绍,能学会Mycat的使用。安装Mycat官网:http://www.mycat.io/可以了解下Mycat的背...原创 2019-05-12 22:52:17 · 232 阅读 · 0 评论 -
Kafka : Kafka入门教程和JAVA客户端使用
目录目录Kafka简介环境介绍术语介绍消费模式下载集群安装配置命令使用JAVA实战参考文献Kafka简介由Scala和Java编写,Kafka是一种高吞吐量的分布式发布订阅消息系统.环境介绍操作系统:centos6.5 kafka:1.0.1 zookeeper:3.4.6术语介绍Broker : Kafka集群包含一个或多个服务器,这种服务器被称为brokerTopic : 每条发布到Kafka...转载 2018-06-20 23:33:33 · 27774 阅读 · 1 评论 -
Thrift远程调用示例
thrift是facebook研发的跨语言的RPC框架,这次我们来编写一个thrift调用的示例。需要首先定义一个数据结构,用文本编辑器,然后通过thrift编译成不同语言的文件,这是实现跨平台的关键步骤,这次我演示的是将定义的数据结构文件编译成java的类。1.首先去thrift官网下载编译工具。(windows下是thrift-[版本号].exe)我们用文本编辑器定义一个简单的数据结构,...转载 2018-05-23 22:46:42 · 2884 阅读 · 0 评论 -
Session 共享
http协议是无状态的,即你连续访问某个网页100次和访问1次对服务器来说是没有区别对待的,因为它记不住你。那么,在一些场合,确实需要服务器记住当前用户怎么办?比如用户登录邮箱后,接下来要收邮件、写邮件,总不能每次操作都让用户输入用户名和密码吧,为了解决这个问题,session的方案就被提了出来,事实上它并不是什么新技术,而且也不能脱离http协议以及任何现有的web技术。原理很简转载 2018-01-25 14:08:46 · 248 阅读 · 0 评论 -
ZooKeeper Watch Java API浅析exists
转自http://blog.csdn.net/lipeng_bigdata/article/details/50985993 Watch是ZooKeeper中非常重要的一个机制,它可以监控ZooKeeper中节点的变化情况,告知客户端。下面,我们以代码为例来分析Watch在ZooKeeper中是如何实现的。ZooKeeper中一共由三种方法可以实现Watch,分别为getData转载 2018-02-24 16:42:51 · 1967 阅读 · 1 评论 -
ZooKeeper 原理及其在 Hadoop 和 HBase 中的应用
ZooKeeper是一个开源的分布式协调服务,由雅虎创建,是Google Chubby的开源实现。分布式应用程序可以基于ZooKeeper实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master选举、分布式锁和分布式队列等功能。简介ZooKeeper是一个开源的分布式协调服务,由雅虎创建,是Google Chubby的开源实现。分布式应用程序可以基于Zo转载 2018-02-24 23:41:42 · 1416 阅读 · 0 评论 -
使用ZooKeeper实现Java跨JVM的分布式锁
转自http://blog.csdn.net/nimasike/article/details/51567653说明:本文是使用Curator框架进行讲解及演示,Curator是对Zookeeper客户端的一个封装,因为Zookeeper的客户端实现偏底层,如果想要实现锁或其他功能都需要自己封装,实现一些简单的功能还可以,如果想要实现锁这种高并发下的东西,不建议自己封装,除非你自信你写转载 2018-02-24 15:26:48 · 173 阅读 · 0 评论 -
zookeeper集群部署及测试
环境三台测试机操作系统: centos7 ; hostname: c1 ; ip: 192.168.1.80操作系统: centos7 ; hostname: c2 ; ip: 192.168.1.81操作系统: centos7 ; hostname: c3 ; ip: 192.168.1.82备注注意要关闭防火墙查看磁盘状况为了避免磁盘使用不均而导致系原创 2017-12-09 08:22:13 · 320 阅读 · 0 评论 -
RabbitMQ 实战教程
1、简介 MQ(Message Queue)消息队列,用于应用系统解耦、消息异步分发。 RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统。 其优点如下。1)Reliability-可靠性高。2)Flexible Routing-路由灵活。3)Clustering-支持集群。4)Federation-支持互联。5)Traci转载 2018-01-28 23:18:22 · 304 阅读 · 0 评论 -
Dubbo入门示例
Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Spring加载Dubbo的配置即可。下面以官网给出的DemoService作为示例,教大家一步步使用Dubbo实现自己的分布式服务。官网文档介绍:http://dubbo.io/User+Guide-zh.htm#UserGuide-zh-%E5%BF%AB%E9%80%9F%E5%90%AF%E5%8原创 2018-01-31 12:26:57 · 193 阅读 · 0 评论 -
Rabbitmq基本原理
MQ全称为Message Queue, 是一种分布式应用程序的的通信方法,它是消费-生产者模型的一个典型的代表,producer往消息队列中不断写入消息,而另一端consumer则可以读取或者订阅队列中的消息。RabbitMQ是MQ产品的典型代表,是一款基于AMQP协议可复用的企业消息系统。业务上,可以实现服务提供者和消费者之间的数据解耦,提供高可用性的消息传输机制,在实际生产中应用相当广泛。本文...转载 2018-01-29 11:28:50 · 197 阅读 · 0 评论 -
Java消息队列--JMS概述
1、什么是JMS JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持(百度百科给出的概述)。我们可以简单的理解:两个应用程序之间需要进行通信,我们转载 2018-01-28 22:58:03 · 194 阅读 · 0 评论 -
Java消息队列--ActiveMq 实战
1、下载安装ActiveMQ ActiveMQ官网下载地址:http://activemq.apache.org/download.html ActiveMQ 提供了Windows 和Linux、Unix 等几个版本,楼主这里选择了Linux 版本下进行开发。 下载完安装包,解压之后的目录: 从它的目录来说,还是很简单的: ...转载 2018-01-28 22:51:48 · 140 阅读 · 0 评论 -
深入理解分布式事务,高并发下分布式事务的解决方案
1、什么是分布式事务分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。以上是百度百科的解释,简单的说,就是一次大的操作由不同的小操作组成,这些小的操作分布在不同的服务器上,且属于不同的应用,分布式事务需要保证这些小操作要么全部成功,要么全部失败。本质上来说,分布式事务就是为了保证不同数据库的数据一致性。2、分布式事务的产转载 2018-02-06 13:01:19 · 158 阅读 · 0 评论 -
Big data messaging with Kafka
When the big data movement started it was mostly focused on batch processing. Distributed data storage and querying tools like MapReduce, Hive, and Pig were all designed to process data in batches rat转载 2018-02-07 14:20:02 · 208 阅读 · 0 评论 -
RocketMQ 实战入门
RocketMQ 是什么Github 上关于 RocketMQ 的介绍:RcoketMQ 是一款低延迟、高可靠、可伸缩、易于使用的消息中间件。具有以下特性:支持发布/订阅(Pub/Sub)和点对点(P2P)消息模型在一个队列中可靠的先进先出(FIFO)和严格的顺序传递支持拉(pull)和推(push)两种消息模式单一队列百万消息的堆积能力支持多种消息协议,如 JMS、MQTT 等分转载 2018-02-07 21:29:15 · 772 阅读 · 0 评论 -
Kafka VS RocketMQ VS RabbitMQ
--kafkaRocketMQRabbitMQ数据来源相关文章定位设计定位系统间的数据流管道,实时数据处理。 例如:常规的消息系统、网站活性跟踪,监控数据,日志收集、处理等非日志的可靠消息传输。 例如:订单,交易,充值,流计算,消息推送,日志流式处理,binglog分发等可靠消息传输。和RocketMQ类似。基础对比成熟度日志领域成熟 成熟 成熟 所属社区/公司Apache Alibaba开发,已...转载 2018-03-10 08:39:51 · 571 阅读 · 0 评论 -
RocketMQ的顺序消费和事务消费
一、三种消费 :1.普通消费 2. 顺序消费 3.事务消费1.1 顺序消费:在网购的时候,我们需要下单,那么下单需要假如有三个顺序,第一、创建订单 ,第二:订单付款,第三:订单完成。也就是这个三个环节要有顺序,这个订单才有意义。RocketMQ可以保证顺序消费,他的实现是生产者(一个生产者可以对多个主题去发送消息)将这个三个消息放在topic(一个topic默认有4个队列)的一个队列里面,单转载 2018-03-12 09:18:07 · 277 阅读 · 0 评论 -
JTA分布式事务实战(atomikos)
转自http://690360459-qq-com.iteye.com/blog/2007001最近需要用到分布式事务,研究了下jta,使用了atomikos这个jta的实现,使用的是spring3.0,废话少说,直接贴代码。1.使用如下jar包atomikos-util.3.7.0.jarcglib-nodep-2.2.2.jartransaction转载 2018-01-03 13:47:09 · 752 阅读 · 0 评论 -
DRF算法
背景在Mesos和YARN中,都用到了dominant resource fairness算法(DRF),它不同于hadoop基于slot-based实现的fair scheduler和capacity scheduler,论文阅读:Dominant Resource Fairness: Fair Allocation of Multiple Resource Types。考虑在一个包转载 2018-03-25 23:02:37 · 968 阅读 · 0 评论 -
Dubbo解析及原理浅析
一、Dubbo基本概念解释Dubbo是一种分布式服务框架。 Webservice也是一种服务框架,但是webservice并不是分布式的服务框架,他需要结合F5实现负载均衡。因此,dubbo除了可以提供服务之外,还可以实现软负载均衡。它还提供了两个功能Monitor 监控中心和调用中心。这两个是可选的,需要单独配置。Dubbo的计数架构图如下:我们解释以下这个架构图转载 2018-01-31 12:15:50 · 157 阅读 · 0 评论