Dubbo是阿里巴巴内部的SOA服务化治理方案的核心框架,每天为2000+ 个服务提供3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。Dubbo自2011年开源后,已被许多非阿里系公司使用。
Dubbo是什么?能做什么?
Dubbo适用于哪些场景?
当服务越来越多时,服务的URL地址信息就会爆炸式增长,配置管理变得非常困难,F5硬件负载均衡器的单点压力也越来越大。
当进一步发展,服务间依赖关系变得错踪复杂,甚至分不清哪个应用要在哪个应用之前启动,架构师都不能完整的描述应用的架构关系。
接着,服务的调用量越来越大,服务的容量问题就暴露出来,这个服务需要多少机器支撑?什么时候该加机器?等等……
在遇到这些问题时,都可以用Dubbo来解决。
可参见:Dubbo的背景及需求
Dubbo的设计思路是什么?
可参见:开发者指南 - 框架设计
Dubbo的需求和依赖情况?
可参见:用户指南 - 依赖
Dubbo的性能如何?
可参见:Dubbo性能测试报告
和淘宝HSF相比,Dubbo的特点是什么?
2. Dubbo比HSF的扩展性更好,很方便二次开发,一个框架不可能覆盖所有需求,Dubbo始终保持平等对待第三方理念,即所有功能,都可以在不修改Dubbo原生代码的情况下,在外围扩展,包括Dubbo自己内置的功能,也和第三方一样,是通过扩展的方式实现的,而HSF如果你要加功能或替换某部分实现是很困难的,比如支付宝和淘宝用的就是不同的HSF分支,因为加功能时改了核心代码,不得不拷一个分支单独发展,HSF现阶段就算开源出来,也很难复用,除非对架构重写。
3. HSF依赖比较多内部系统,比如配置中心,通知中心,监控中心,单点登录等等,如果要开源还需要做很多剥离工作,而Dubbo为每个系统的集成都留出了扩展点,并已梳理干清所有依赖,同时为开源社区提供了替代方案,用户可以直接使用。
4. Dubbo比HSF的功能更多,除了ClassLoader隔离,Dubbo基本上是HSF的超集,Dubbo也支持更多协议,更多注册中心的集成,以适应更多的网站架构。
Dubbo在安全机制方面是如何解决的?
Dubbo通过Token令牌防止用户绕过注册中心直连,然后在注册中心上管理授权。Dubbo还提供服务黑白名单,来控制服务所允许的调用方。
可参见:Dubbo的令牌验证
Dubbo在阿里巴巴内部以及外部的应用情况?
开源后,已被:去哪儿,京东,吉利汽车,方正证劵,海尔,焦点科技,中润四方,华新水泥,海康威视,等公司广泛使用,并不停的有新公司加入,社区讨论及贡献活跃,得到用户很高的评价。
可参见:Dubbo的已知用户
在分布式事务、多语言支持方面,Dubbo的计划是什么?
在多语言方面,Dubbo实现了C++版本,但在内部使用面极窄,没有得到很强的验证,并且C++开发资源紧张,没有精力准备C++开源事项。
Dubbo采用的开源协议?商业应用应该注意哪些事项?
你可以对它进行改造和二次发布,只要求保留阿里的著作权,并在再发布时保留原始许可声明。
可参见:Dubbo的开源许可证
Dubbo开发团队情况?
- 梁飞 (开发人员/产品管理)
- 刘昊旻 (开发人员/过程管理)
- 刘超 (开发人员/用户支持)
- 李鼎 (开发人员/用户支持)
- 陈雷 (开发人员/质量保障)
- 闾刚 (开发人员/开源运维)
从左至右:刘超,梁飞,闾刚,陈雷,刘昊旻,李鼎
可参见:Dubbo的团队成员
其他开发者如何参与?可以做哪些工作?
Github地址:https://github.com/alibaba/dubbo
开发者可以在JIRA上认领小的BUG修复,也可以在开发者指南页面领取大的功能模块。
JIRA:http://code.alibabatech.com/jira/browse/DUBBO(暂不可用)
开发者指南:http://alibaba.github.io/dubbo-doc-static/Developer+Guide-zh.htm
Dubbo未来的发展计划?
可参见:http://alibaba.github.io/dubbo-doc-static/Roadmap-zh.htm