dubbo是什么?
简单来说dubbo就是一个分布式远程调用框架,就是我们平时所说的Java RPC框架,RPC全称为remote procedure call,即远程过程调用。
dubbo有什么用?
以前我们的程序全都部署在一个服务器上,我们通过web层接收请求调用相应的请求就自然没啥问题。现在在分布式开发中web层调用方法都变成了远程调用,即调用别的服务器上的服务,那么要怎么来调用,就是通过dubbo提供的功能来实现。
dubbo具体的核心功能包括以下三点。
- 面向接口的远程方法调用
- 智能容错和负载均衡
- 服务自动注册和发现
在分布式框架中,我们通常用provider即生产者来表示暴露服务的服务提供方,用consumer即消费者来表示调用服务的服务消费方。那么在工作过程中两方的关系可以通过下图来表示,当每个provider都调用了所有consumer中的方法时,就已经显得有些乱了,当有更多的provider和consumer时会更乱,这个时候我们就需要一个帮手来帮助我们管理这些复杂的对应关系,就是zookeeper。
zookeeper是什么?
zookeeper是用于分布式中一致性处理的框架。我们用它来做为dubbo的服务注册中心,用它来监控管理我们的项目。