首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

dubbo源码分析一:整体分析(1)

dubbo源码分析一:整体分析(1)

本文作为dubbo源码分析的第一章,先从总体上来分析一下dubbo的代码架构、功能及优缺点,注意,本文只分析说明开源版本提供的代码及功能。
1.dubbo的代码架构:

    spring适配层:常规的spring适配方法,内容包括使用dubbo.xsd文件来定义dubbo相关的元素及属性;DubboNamespaceHandler用来向spring容器注册dubbo的元素解析器;DubboBeanDefinitionParser用来解析具体的dubbo元素。
    应用协议层:关于thrift,dubbo并没有实现原生态的thrift协议,而是进行了相应的改造,并且thrift的版本是0.8的版本,不建议在生产中使用thrift协议;关于http协议,dubbo使用了spring框架的httpinvoker相关的类及协议,客户端可以脱离dubbo独立调用服务端;关于webservice协议,支持soap协议,客户端可以脱离dubbo独立调用服务端。
    注册中心:在实际的测试过程中,多播方式的注册中心不能有效地识别服务端、客户端已经掉线停服的情况,不建议在生产环境中使用。

2.dubbo在服务治理方面提供的功能

    负载均衡:dubbo是在服务端配置的负载均衡情况,通过注册中心将信息传递给消费者,消费者使用第一个服务器的负载均衡配置,负载均衡配置可以通过监控中心进行统一的更改。
    路由:通过本人对于源码的解读及相关的测试,dubbo应该是不支持跨数据中心的路由。
    限流:通过在consumer上添加限流过滤器来实现,没有在服务端做限流。
返回列表