六:Dubbo与Zookeeper、SpringMvc整合和利用

DUBBO与ZOOKEEPER、SPRINGMVC整合和运用

互联网的升华,网站接纳的范畴不断扩充,常规的垂直应用架构已力不从心回答,分布式服务架构以及流动总结架构势在必行,Dubbo是一个分布式服务框架,在这种情景下诞生的。现在主导工作抽取出来,作为单身的劳务,使前端采取能更高效和白城久安的响应。

第一:介绍Dubbo背景

Dubbo是一个分布式服务框架,解决了下边的所面对的问题,Dubbo的架构如图所示:

要害核心部件:

Remoting: 网络通信框架,实现了 sync-over-async 和 request-response
音讯机制.

RPC: 一个长距离过程调用的架空,补助负载均衡、容灾和集群效益

Registry: 服务索引框架用于服务的注册和服务事件公布和订阅

Dubbo工作规律

图片 1

Provider

露马脚服务方称之为“服务提供者”。

Consumer

调用远程服务方称之为“服务消费者”。

Registry

劳务登记与发现的基本目录服务称之为“服务注册中央”。

Monitor

总计服务的调用次调和调用时间的日志服务称之为“服务监督主题”。

(1) 连通性:

注册主题负责服务地点的挂号与寻找,相当于目录服务,服务提供者和顾客只在启动时与登记中央交互,注册中央不换车呼吁,压力较小

监督中心负责总括各服务调用次数,调用时间等,总结先在内存汇总后每分钟一遍发送到监控要旨服务器,并以报表展现

服务提供者向注册核心登记其提供的劳务,并报告调用时间到监控主题,此时间不分包网络支付

劳务消费者向登记中央取得服务提供者地址列表,并按照负荷算法直接调用提供者,同时报告调用时间到监督主旨,此时间包含网络开发

登记焦点,服务提供者,服务消费者三者之间均为长连接,监控核心除了

注册中央经过长连接感知服务提供者的留存,服务提供者宕机,注册中央将即时推送事件通报消费者

登记核心和监控中央总体宕机,不影响已运转的提供者和消费者,消费者在本地缓存了提供者列表

挂号中央和督查主题都是可选的,服务消费者可以直连服务提供者

(2) 健状性:

监理主题宕掉不影响使用,只是丢失部分采样数据

数据库宕掉后,注册中央还是可以经过缓存提供劳动列表查询,但不可能注册新劳动

登记主旨对等集群,任意一台宕掉后,将机关切换来另一台

登记核心全方位宕掉后,服务提供者和服务消费者还能通过本地缓存通讯

劳动提供者无状态,任意一台宕掉后,不影响使用

劳动提供者全部宕掉后,服务消费者拔取将不可以采取,并无限次重连等待服务提供者恢复

(3) 伸缩性:

挂号中央为对等集群,可动态增加机械配置实例,所有客户端将电动发现新的注册主题

劳动提供者无状态,可动态扩展机械配置实例,注册中央将推送新的劳务提供者音讯给顾客

节点角色表明:

Provider: 透露服务的劳动提供方。

Consumer: 调用长途服务的劳务消费方。

Registry: 服务注册与发现的注册中央。

Monitor: 总括服务的调用次调和调用时间的督察主旨。

Container: 服务运作容器。

调用关系表明:

  1. 劳务容器负责启动,加载,运行服务提供者。

  2. 劳务提供者在启动时,向登记中央登记自己提供的劳动。

  3. 服务消费者在启动时,向注册中央订阅自己所需的劳动。

3.
登记中央重回服务提供者地址列表给顾客,如若有变动,注册中央将依照长连接推送变更数据给消费者。

4.
劳务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者举行调用,假使调用战败,再选另一台调用。

5.
服务消费者和提供者,在内存中总共调用次数和调用时间,定时每分钟发送一回总计数据到监控中央。

置于功效(只列了一有些效用)

1.用户管理:用户是系统操作者,该意义重要成就系统用户配置。

2.部门管理:配置连串社团机关(集团、部门、小组),树结构表现,可随机调整上下级。

3.区域管理:系统都会区域模型,如:国家、省市、地市、区县的保安。

4.菜单管理:配置序列菜单,操作权限,按钮权限标识等。

5.角色管理:角色菜单权限分配、设置角色按机关举办多少范围权限划分。

6.字典管理:对系统中时常应用的有些较为恒定的数目举行维护,如:是否、男女、序列、级别等。

7.操作日志:系统常规操作日志记录和查询;系统卓殊信息日志记录和询问。

8.连接池监视:监视当期系统数据库连接池状态,可进展剖析SQL找出系统性能瓶颈。

9.行事流引擎:实现业务工单流转、在线流程设计器。

开发工具

1.Eclipse IDE:采纳Maven项目管理,模块化。

2.代码生成:通过界面情势大概布置,自动生成相应代码,方今包括几种生成格局(增删改查):单表、一对多、树结构。生成后的代码假使不需要专注赏心悦目程度,生成后即可用。

技能选型(只列了一有些技术)

1、后端

劳动框架:Dubbo、zookeeper、Rest服务

缓存:Redis、ehcache

音信中间件:ActiveMQ

负载均衡:Nginx

分布式文件:法斯特(Fast)DFS

数据库连接池:Alibaba Druid 1.0

骨干框架:Spring framework

有惊无险框架:Apache Shiro 1.2

视图框架:Spring MVC 4.0

服务端验证:Hibernate Validator 5.1

布局框架:SiteMesh 2.4

工作流引擎:Activiti 5.15

任务调度:quartz 1.8.5

持久层框架:MyBatis 3.2

日记管理:SLF4J 1.7、Log4j

工具类:Apache Commons、Jackson 2.2、Xstream 1.4、Dozer 5.3、POI

2、前端

JS框架:JQuery 1.9。

CSS框架: Bootstrap 4 metronic

客户端验证:JQuery Validation Plugin。

富文本:CKEcitor

文本管理:CKFinder

动态页签:Jerichotab

数码表格:jqGrid

对话框:jQuery jBox

树结构控件:jQuery zTree

此外零件:Bootstrap 4 metronic

3、支持

服务器中间件:Tomcat 6、7、Jboss 7、WebLogic 10、WebSphere 8

数据库扶助:近年来仅提供mysql数据库的支撑,但不避免数据库,下个版本升级多数据源切换和数据库读写分离:
如:Oracle、SqlServer、H2等

支撑支付环境:Eclipse、MyEclipse、Ras、Idea等

经典介绍:

源码结构

图片 2

 

相关文章