boot-dubbo Spring-Boot 的 Dubbox开源项目

我要开发同款
匿名用户2015年11月30日
20阅读
开发技术Java
所属分类程序开发、常用工具包
授权协议Apache

作品详情

Boot-dubbo项目整合了最新的SpringBoot和功能强大的RPC框架Dubbox,两者都有优点,也都有缺点,最新版本的SpringBoot包含了Metrics模块

Dubbox官方地址:

Dubbox:https://github.com/dangdangdotcom/dubbox

SpringBoot:

    1、微内核2、配置简单3、模块化4、开箱即用5、完全兼容Spring6、设计理念极其先进,很多思想来自OSGi,但是在现有技术的实现

 缺点:

    二次改造定制难缺少成熟的SOA或者RPC框架

Dubbox:

    1、完全兼容Dubbo2、功能强大3、性能强悍4、运行稳定5、可扩展性较好,Api和Spi分离

缺点:

    1、官方停止维护已经两年之久了2、依赖较为陈旧3、运行时较重,应该微内核和模块化这个框架4、配置较为复杂,学习成本较高

建议:

大家有机会一起维护Dubbox 模块化和微内核这个框架

使用:

    1、安装Maven2、下载dubbox,在${dubbox-home}执行mvncleaninstall-Dmaven.test.skip=true(执行该命令会从中央仓库下载依赖,若一次安装不成功,多执行几次,一般都是网络问题或依赖问题造成的),最终肯定会成功安装到本地仓库中3、使用Eclipse/IDEA导入boot-dubbo基本上的结构你就可以看懂了,下述也有简单的描述

boot-dubbo-normal-client

这个项目我想以一个第三方的项目使用dubbox

这个项目跟springboot没有一点关系。

如果仅仅测试dubbo:

boot-dubbo-simple

 boot-dubbo-simple-client

上述两个项目就够用了

boot-dubbo-infrastructure这个模块项目只与数据库相关,其中集成了Spring-Data-Jpa以及Mybatis

Spring-Data-Jpa一般负责增删改,这个及其简单

 Mybatis负责较为复杂的查询

boot-dubbo-service该项目依赖api和boot-dubbo-infrastructure它要实现api约定的接口,另外依赖boot-dubbo-infrastructure对不同数据表的操作以及对事务的操作

boot-dubbo-web该项目依赖api,它是dubbo的客户端,它通过调用api等于invoke到serice的服务上,从而实现了rpc的调用和服务治理。

 说明:

service:一般我们的service瓶颈在IO或者数据库上,部署无需太多

web:一般的压力在web上,如果很多用户并发,session以及转换都在web上,web建议多部署几台

注释:

在实际项目的架构中,Service和Infrastrature(DAO)之间应该还需要一层,就是ProxyDao那么这一层应该在Infrastrature这个当中

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论