分布式服务框架Dubbo+Zookeeper

分布式服务框架Dubbo+Zookeeper

Author QiuRiMangCao 秋日芒草


Zookeeper 能解决的问题

1.统一命名服务(server1:order服务名,server1:downOrder服务名,zk负责管理命名)
2.状态同步(用户状态,订单状态,在不同节点之间设置状态同步,保证各节点数据一致性)
3.集群管理(管理集群各节点协同对外提供服务)
4.分布式应用配置项的配置(多服务对应了不同的配置,zk负责统一配置信息)
5. ..

大型电商系统 - 业务拆分 | 应用集群部署

核心系统和非核心系统按业务拆分,在大流量时,可以关闭非核心系统,实现自动的优雅降级

大型电商系统最终架构

客户端层 - 负载均衡层 - 应用集群层 - 分布式服务层(dubbo,不直接对外提供,存在安全问题) - 资源层

Dubbo 能解决的问题

1.分层架构方式,松耦合,存在服务提供方(Provider)和消费方(Consumer)
2.高性能NIO通信以及多协议集成
3.服务动态寻址与路由(结合zk来做)
4.软负载均衡(实现Dubbo服务的系统服务提供负载是属于服务级别的负载)与容错
5.服务依赖分析与降级

Dubbo 服务调用

1.服务提供方发布服务到服务注册中心(Dubbo实现zk)
2.服务消费方从服务注册中心订阅服务
3.服务消费方调用已经注册的可用服务(Consumer invoke Provider)
4.dubbo-admin:监控服务提供方和消费方状态工程

Dubbo框架模块

1.dubbo-common 公共逻辑
2.dubbo-remoting 远程通信
3.dubbo-rpc 远程调用
4.dubbo-cluster 集群模块
5.dubbo-registry 注册中心
6.dubbo-monnitor 监控模块
7.dubbo-config 配置模块
8.dubbo-container 容器模块

服务可以支持多种负载均衡策略

1.随机
2.轮询
3.最少并发

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Dubbo是一个高性能的Java RPC框架,它提供了分布式服务框架的支持,可以让开发者轻松地构建分布式应用。而Zookeeper是一个分布式的协调服务,它可以用来管理和协调分布式系统中的各种资源,如配置信息、命名服务分布式锁等。 当使用Dubbo框架时,我们可以将服务注册到Zookeeper中,这样其他的服务消费者就可以通过Zookeeper来发现和调用这些服务。同时,Zookeeper还可以用来监控服务的状态,当服务出现故障时,Zookeeper可以及时地通知其他服务消费者,从而保证整个分布式系统的稳定性和可靠性。 因此,DubboZookeeper的结合可以为分布式系统的开发和运维提供很好的支持,让开发者可以更加轻松地构建高性能、可靠的分布式应用。 ### 回答2: DubboZookeeper是两个分布式框架,结合起来可以帮助开发者构建高性能、高可用性的分布式应用。Dubbo提供了RPC远程过程调用框架,可以实现跨进程、跨语言的方法调用,支持负载均衡、容错、限流等特性。而Zookeeper是一个开源的分布式协调服务框架,可以协调和管理分布式应用的节点之间的通信。下面详细介绍DubboZookeeper分布式基础。 1、Dubbo Dubbo是一款高性能、轻量级的RPC框架,采用Java编写,支持多种协议(Dubbo协议、HTTP、Hessian、RMI等),通过注册中心连接提供者和消费者。Dubbo可以做到请求耗时的优化、负载均衡、集群容错、异步调用等特性,让开发者可以轻松地构建分布式应用。 Dubbo的工作流程如下:服务提供者(Provider)将服务注册到注册中心,服务消费者(Consumer)从注册中心订阅服务,当服务消费者需要调用服务时,会通过代理对象来远程调用服务提供者,完成方法调用并将结果返回。Dubbo自带了多种注册中心的实现,例如Zookeeper、Redis等。 2、Zookeeper Zookeeper是一个开源的分布式协调服务框架,可以用来协调和管理分布式应用的节点之间的通信。Zookeeper的主要作用是提供一个分布式的协调服务,例如分布式锁、配置管理、分布式队列等。Zookeeper可以减轻分布式应用的复杂性,让开发者可以专注于业务逻辑。 Zookeeper通过基于目录树结构的数据模型来保存数据,并提供了一套完整的API用于操作这些数据。Zookeeper的工作原理是基于主从架构,当Zookeeper集群中的节点出现故障时,可以自动选举出新的Leader节点以继续提供服务DubboZookeeper结合起来可以构建一个高可用性的分布式应用。Dubbo服务注册到Zookeeper服务消费者从Zookeeper订阅服务,同时Zookeeper提供了注册中心的高可用性和负载均衡等特性。当服务提供者出现故障时,Zookeeper可以自动重新分配服务提供者的角色,从而保证服务的高可用性。 ### 回答3: DubboZookeeper是目前流行的分布式系统基础组件,它们常常被一起使用来构建可靠的分布式服务。在现代复杂的分布式系统中使用基础组件可以极大地简化开发和部署工作,而测试和维护都变得更容易。 Dubbo是一种高性能的分布式服务框架,它提供了统一的服务管理和RPC调用机制。Dubbo的核心在于将服务提供方和服务消费方解耦,同时提供了动态负载均衡和服务治理等功能。Dubbo具有高性能、可靠、易扩展等优点,广泛应用于大型分布式系统中。 Zookeeper是一种开源的分布式配置管理和协调解决方案,可以实现分布式配置管理、命名服务分布式锁、集群选主和消息队列等功能。Zookeeper具有高可用性、可靠性和易扩展性,可以轻松管理大型分布式系统的配置和状态信息。Zookeeper还提供了建立分布式协调基础设施的基础组件。 在实际应用中,Dubbo通常和Zookeeper一起使用。服务提供方将服务注册到Zookeeper中心,服务消费方从Zookeeper中获取服务地址,并进行RPC调用,通过Dubbo提供的高性能、高可靠性的RPC调用机制实现分布式服务的调用和管理。 总之,DubboZookeeper分布式系统基础构件,通常会共同使用来实现高性能、高可靠性的分布式服务。对于分布式开发者来说,掌握这些基础组件的使用和原理,可以对分布式开发和维护提供很大帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值