dubbo理解(一)

编程

1. rpc调用需要定制开发,很多额外的工作量

2. 分布式服务中,服务达到几百上千时,相互之间的调用错综复杂,相互依赖严重

3. 对集群性的服务,需要负载策略

4. 对集群性的服务,需要能动态扩展节点

dubbo介绍:

1. 一个分布式、高性能、透明化的RPC服务框架。

2. 提供服务自动注册、自动发现等高效服务治理方案。

3. 其功能主要包括:高性能NIO通讯及多协议集成,服务动态寻址与路由,软负载均衡与容错,依赖分析与降级等。

dubbo结构及功能:

在这里插入图片描述

1. container负责启动、加载、运行provider

2. provider启动时,向registry注册自己的服务

3. cousumer启动时,向registry订阅自己的服务

4. registry提供provider列表给consumer,实时推送变动情况

5. consumer根据provider列表,按负载算法选一台provider调用

6. monitor统计rpc的调用频次

常规配置(xml方式与properties方式)

1)关闭某个服务的启动时检查:(没有提供者时报错)

<dubbo:reference check=“false” />

2)关闭所有服务的启动时检查:(没有提供者时报错) 写在定义服务消费者一方

<dubbo:consumer check=“false” />

3)关闭注册中心启动时检查:(注册订阅失败时报错)

<dubbo:registry check=“false” />

4)引用缺省是延迟初始化的,改为饥饿加载

<dubbo:reference init=“true” />

5)禁用注册

<dubbo:registry register=“false” />

6)回声测试:所有服务自动实现EchoService接口, 强转EchoService测试可用性

< dubbo:reference id=“aaa" interface=“com.xxx.XxxService” />

EchoService echoService = ( EchoService ) ctx.getBean(“aaa")

以上是 dubbo理解(一) 的全部内容, 来源链接: utcz.com/z/518963.html

回到顶部