Dubbo,Zookeeper入门
- Zookeeper
- 功能:分布式应用程序协调服务,集群管理者,监视集群各个节点状态-->提交反馈-->进行下一步合理操作;
- 机制:目录方式,当目录节点发生变化(数据改变,被删除,子节点增加删除)时,zookeeper会通知客户端。
- 工作原理:核心原子广播,保证server同步,实现是Zab协议:两种模式:恢复模式(选主)和广播模式(同步),服务器或领导者崩溃选主。
- 状态:
- LOOKING:server不知道leader是谁,正在搜寻;
- LEADING:当前server是选举出来的leader;
- FOLLOWING:leader选举出来,当前server与之同步;
- Dubbo
- 功能:高性能服务框架:提供服务(把一些业务分离,变成服务,供他人调用)
- 原理:RPC远程服务调用。SOA服务治理,Reactor模型通信框架:tcp长连接
- 角色:provider(服务提供者),consumer(调用服务的消费者),registry(注册中心),monitor(统计服务调用时间、次数的监控中心),container服务运行容器
- 关系:
- container负责启动、加载、运行provider
- provider启动时,向registry注册提供的服务
- consumer启动时,向registry订阅所需的服务
- registry返回provider的地址列表给consumer,如果有变更,registry将基于长连接推送变更数据给consumer
- consumer从provider的地址列表中,基于软负载均衡算法,选一台provider调用,调用失败选另一台。
- provider和consumer,在内存累计调用次数、时间定时每分钟发送统计数据到monitor


Dubbo,Zookeeper入门的更多相关文章
- (转)Dubbo + Zookeeper入门初探
一.搭建java和tomcat环境 二.搭建zookeeper 三.搭建dubbo监控中心 四.配置项目 4.1 服务提供方代码 4.2 服务使用方代码 五.测试 2018年2月15日,阿里巴巴的du ...
- Dubbo+Zookeeper 入门Demo
1.Zookeeper安装及启动 可参考这篇文章https://www.cnblogs.com/geekdc/p/5948326.html 从下载到启动都描述的很详细,按照文章一步一步走即可. 2.D ...
- spring Boot环境下dubbo+zookeeper的一个基础讲解与示例
一,学习背景 1. 前言 对于我们不管工作还是生活中,需要或者想去学习一些东西的时候,大致都考虑几点: a) 我们为什么需要学习这个东西? b) 这个东西是什么? c) ...
- 基于springboot构建dubbo的入门demo
之前记录了构建dubbo入门demo所需的环境以及基于普通maven项目构建dubbo的入门案例,今天记录在这些的基础上基于springboot来构建dubbo的入门demo:众所周知,springb ...
- zookeeper 入门知识
作为开启分布式架构的基石,除了必会还有的选么 自己的一些理解,有错误的话请一定要给予指正! 一.是什么? 分布式数据一致性的解决方案. 二.有什么用 数据的发布/订阅(配置中心) . 负载均衡(du ...
- Dubbo从入门到实战:实战篇
一.加入 zookeeper 作为注册中心 在前面的案例中,我们没有使用任何的注册中心,而是用一种直连的方式进行的.但是,实际上很多时候,我们都是使用 dubbo + zookeeper 的方式,使用 ...
- Dubbo从入门到实战:入门篇
很多时候,其实我们使用这个技术的时候,可能都是因为项目需要,所以,我们就用了,但是,至于为什么我们需要用到这个技术,可能自身并不是很了解的,但是,其实了解技术的来由及背景知识,对于理解一项技术还是有帮 ...
- springboot整合dubbo+zookeeper最新详细
引入 最近和小伙伴做一个比赛,处于开发阶段,因为涉及的服务比较多,且服务需要分开部署在不同的服务器上,讨论之后,打算采用分布式来做,之前学习springboot的时候,部分章节涉及到了springbo ...
- 搭载Dubbo+Zookeeper踩了这么多坑,我终于决定写下这篇!
大家好,我是melo,一名大二上软件工程在读生,经历了一年的摸滚,现在已经在工作室里边准备开发后台项目啦. 这篇文章我们不谈数据结构了,来谈谈入门分布式踩过的坑.感觉到了分布式这一层,由于技术更新迭代 ...
随机推荐
- ES6 类
ES6之前没有类的概念,一般采用以下方式来模仿类 基本的类声明语法 私有属性是实例中的属性,不会出现在原型上,且只能在类的构造函数中创建所有私有属性 PersonClass声明实际上创建了一个具有构造 ...
- rem自适应手机端布局
通过js根据屏幕设备尺寸的大小,改变根元素的值: <script> var html = document.querySelector("html"); var rem ...
- 和textrank4ZH代码一模一样的算法详细解读
前不久做了有关自动文摘的学习,采用方法是TextRank算法,整理和大家分享. 一. 关于自动文摘 利用计算机将大量的文本进行处理,产生简洁.精炼内容的过程就是文本摘要,人们可通过阅读摘要来把握文本主 ...
- Disruptor 详解
想了解一个项目,最好的办法就是,把它的源码搞到本地自己捣鼓. 在网上看了 N 多人对 Disruptor 速度的吹捧,M 多人对它的机制分析,就连 Disruptor 官方文档中,也 NB 哄哄自诩: ...
- 【枚举】珠心算测验[c++]
题目描述 珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术.珠心算训练,既能够开发智力,又能够为日常生活带来很多便利,因而在很多学校得到普及. 某学校的珠心算老师采用一种快速考察珠心算加 ...
- Listener(1)—基础知识
一.监听器 1.概念: 专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监听的对象状态发生情况时,立即采取相应的 行动.Servlet规范为每种事件监听器都定义了相应的接口,w ...
- 5、python的变量和常量
今天看看python的变量和常量,这是python中最基本的两个概念. 首先先说一下解释器执行Python的过程: python3 C:\test.py 1. 启动python解释器(内存中) ...
- [web前端] css3 transition属性实现3d动画效果
cp from : https://www.cnblogs.com/chrxc/p/5123375.html transition属性是一个很强大的3d动画属性,我动手试了一下,很多在网上很火的网页动 ...
- C# Task的GetAwaiter和ConfigureAwait
个人感觉Task 的GetAwaiter和ConfigureAwait也是比较好理解的,首先看看他们的实现 public class Task<TResult> : Task { //Ge ...
- http重定向到https
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.we ...