携程转型之路:从SOA到Dubbo的高效服务框架升级
83 浏览量
更新于2024-08-27
收藏 770KB PDF 举报
携程的Dubbo之路始于2013年底,当时携程内部主要依赖一个基于HTTP协议的自研SOA微服务框架。这个框架虽然稳定,但存在扩展性差、单线程处理请求限制性能等问题。HTTP协议的连接限制导致在高并发场景下,服务端资源紧张,严重影响了请求处理效率。为了提升系统的性能和可扩展性,携程看到了Dubbo这款业界知名且高性能的RPC框架的价值。
Dubbo以其优秀的架构设计和数据传输机制,能够有效解决上述问题。特别是其服务治理和注册中心功能,比如携程使用的非中心化的分布式服务注册中心Artemis,通过去中心化设计保证服务实例数据的一致性。Artemis允许服务实例与集群中的任意节点保持长连接,确保服务发现的实时性和可靠性。
在服务数据模型上,携程沿用了原有的SOA服务模型,将接口(interface)作为核心,一个应用可以包含多个服务,一个服务可以在多个服务器上部署。每个服务实例都有唯一的ServiceID,用于标识和定位服务,这在引入Dubbo时需要额外处理,因为Dubbo本身不直接支持ServiceID。
引入Dubbo的关键步骤包括整合服务治理和监控系统,以及适配Dubbo的接口和服务引用配置,以确保ServiceID能够准确传递。这一过程需要技术团队对现有架构进行调整,并可能涉及到代码层面的改造,以适应新的服务框架。
携程选择Dubbo是出于提升系统性能、扩展性和灵活性的考量,通过对原有框架的优化和Dubbo的集成,实现了服务的高效管理和监控,为公司的业务发展提供了更强的技术支撑。这个转型不仅是技术升级,也是企业适应快速变化的技术环境,追求更高水平服务质量和用户体验的重要举措。
2018-02-22 上传
点击了解资源详情
2021-09-14 上传
2021-09-14 上传
2021-08-17 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
紫藤花叶子
- 粉丝: 286
- 资源: 888
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码