Introducing Dubbo

    In the past few days, in my spare time, I built the dubbo+zookeeper architecture on linux again , which is obviously easier than the first time, but this time I was planted on the version problem, wasted an afternoon, and finally found that the version was too The high cause cannot be started. I believe that the programmers understand what kind of mood this is! ! ! O(∩_∩)O~~~ ! ! !

 

Origin: Origin:

 

To talk about the rise of dubbo, we have to talk about the evolution of the architecture. From ORM to MVC to RPC to SOA to now dubbo. Here is a common picture:


 

 

Each evolution of the architecture is to make up for the shortcomings of the previous architecture and make it more in line with our current business. So what is the appearance of dubbo for?

 

    We know that RPC solves the request calls between different memory spaces, and SOA solves the problem of inefficient use of machines caused by poor service management when RPC provides more and more services. Then dubbo is a combination of the advantages of both.
     Dubbo is a high-performance and transparent RPC remote service invocation solution, an SOA service governance solution, and a distributed service framework. The following is a picture found on the blog of the great god on the Internet, which seems to explain the problem:


 

 

It can be clearly seen from the figure that it utilizes the remote call of RPC, and also applies the SOA service-oriented idea (registry).

 

 

introduce:

 

1. The Dubbo architecture has several roles:

  • Provider: The service provider that exposes the service
  • Consumer: The service consumer that invokes the remote service
  • Registry: The service is registered in the discovered registry
  • Monitor: A monitoring center that counts service calls and call times

 

 

2. Dubbo's registration center

 

    For service providers and service consumers, not only need to pay attention to the information of the service, but also need to manage the service. According to the single responsibility principle, how can the burden on the provider and the consumer be reduced a little?

    As a result, the registration center of dubbo came out. It can complete the external unification of services through a specific protocol, and manage the services in a unified manner, thereby optimizing the process and management of the release/use of internal applications.

 dubbo提供的注册中心有如下几种类型:

  • Multicast注册中心
  • Zookeeper注册中心
  • Redis注册中心
  • Simple注册中心

 

常用的是zookeeper注册中心,zookeeper在解决实际的分布式问题上面有很好的解决方法。

 

 

3、dubbo的核心

  • 远程通信:

      提供对多种基于长连接的NIO框架的抽象封装,包括多种线程模型、序列化,以及“请求--响应”模式的信息交换方式

  • 集群容错

      提供基于接口方法的远程过程透明调用,包括对多协议的支持,以及对软负载均衡、失败容错、地址路由和动态配置等集群特征的支持

  • 自动发现:

      提供基于注册中心的目录服务,使服务消费方能动态地查找服务提供方,使地址透明,使服务提供方可以平滑地增加或减少机器

 

 


Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325635703&siteId=291194637