前言
回想了一下,做到现在的开发,用过的一些框架 ssm,由于外包某大厂,用过sofa sofamvc sofarpc 然后就没有然后了,感觉一直这样可不行,想着学点什么其他的框架,就从dubbo开始吧,本文中的内容是某视屏教程中所做的笔记,==
1 dubbo是什么?特点?
2 为什么用dubbo
MVC架构:单系统的传统架构,一个系统,一个数据库,所有逻辑都在一起
常用的框架 ssm
RPC架构:系统达到一定规模时,业务越来越多,应用之间的交互也就不可避免,所以需要将业务抽取出来
就形成了稳定的服务群体,并且数据库也分开了,比如电商系统的 商品服务 订单服务 交易服务
常用的框架有 Thrift / Avro / Hessian
SOA架构:当系统继续扩大,服务越来越多,就会发现,服务的管理就十分麻烦(服务的资源评估,小服务的容量浪费等问题),所以要升级soa架构,soa提供了服务的自动发现与管理的功能
常用的框架有 Dubbo / Spring-cloud / Ice
这里总结一下,开始的时候,不要想着用上来就用soa,小型的项目传统架构足矣 ,否则也是浪费,框架的选择不能为了新而新,要符合自身项目的需要,当从前的框架不能满足业务的时候,在考虑新的框架或技术
3 常用soa架构的区别
a 服务的治理是由dubbo先提供出来的,所以关于服务治理更加好一点
b dubbo 集成了第三方的注册中心zookeeper,所以是轻量级的,而spring cloud ICE都自带了注册中心
c 性能方面
性能是由他们采用的协议与语言决定的 Zeroc ICE是c语言开发的,所以性能是第一的
而dubbo采用的是Netty底层tcp长连接 性能第二
而Spring-cloud采用的是http协议性能第三,dubbo的性能大约是spring-cloud的2-3
d 由于spring-cloud依托spring有天然的优势
4 dubbo常用标签
具体的使用方法,配置方式参考开发手册
https://dubbo.gitbooks.io/dubbo-user-book/content/preface/background.html
5 标签之间的依赖关系
6 dubbo的简单demo
可以参考官网中的示例代码
https://github.com/apache/incubator-dubbo