京东SAF:服务架构框架详解
需积分: 10 3 浏览量
更新于2024-07-18
收藏 712KB PPTX 举报
"京东SAF是服务架构框架,旨在统一RPC调用、提升开发效率并确保服务质量。它包含RPC调用框架和服务治理功能,如服务注册、订阅、动态推送和灵活的路由规则。自上线以来,SAF已广泛应用于京东系统,接入了大量接口和服务实例,实现了高效的服务调用和管理。"
京东SAF(Service Architecture Framework)是一种服务架构框架,旨在统一公司的技术栈,推动系统服务化和SOA化。其主要目标包括为老板提供统一的RPC(Remote Procedure Call)调用框架,实现技术对齐,以及为开发人员提升开发效率和服务质量。自2014年4月上线以来,SAF已经成为京东系统服务化的重要基础组件,接入了九百多个接口,覆盖近两千台服务器,拥有超过六千个在线服务实例,并处理着每天数十亿次的服务调用。
SAF的核心功能分为两大部分:RPC调用框架和服务治理。RPC调用框架使开发人员能够以调用本地方法的方式透明地调用远程方法,只需简单配置,不需额外的API侵入。该框架支持长链接协议,利用非阻塞I/O(nio)和长连接进行远程调用,并且还支持Hessian、WebService、REST等多种协议。此外,它具备Failover机制,当服务调用出错时,能自动切换到其他服务提供者重试,并提供了多种负载均衡策略,如随机、轮询和最少调用等。
服务治理功能则包括服务注册和订阅,服务列表的动态推送,以及灵活的服务路由规则和调用参数下发。服务提供者在启动时向注册中心注册,而服务消费者订阅所需的服务,通过注册中心获取服务列表。注册中心负责解决服务提供者(Provider)和服务消费者(Consumer)之间的匹配问题,根据接口、版本和group分组进行区分。这一机制解决了服务调用的单点问题,实现了服务的自动发现和注册。
使用SAF的好处在于,它可以实现无代码侵入的服务发布与调用,加速服务解耦;支持多协议发布,无需修改业务代码;提供高性能的RPC调用;通过服务自动注册和发现解决单点故障;实施高可用策略,便于水平扩展服务能力;实现软负载均衡,减少对硬件负载均衡器的依赖;同时,SAF还提供了便捷的服务运维管理工具。
发布服务通常涉及配置服务接口、版本和实现,然后通过特定的注解或配置文件将服务注册到SAF框架。调用服务则需要指定服务的ID或名称,SAF会根据配置自动查找并调用相应服务。
京东SAF是京东内部服务化战略的关键组成部分,它通过提供一套标准化、高效的服务架构框架,提升了系统的灵活性、稳定性和可扩展性,极大地促进了京东的技术创新和业务发展。
2021-06-07 上传
2017-12-22 上传
2023-08-20 上传
2024-01-21 上传
2023-05-18 上传
2023-09-14 上传
2024-05-15 上传
2024-01-16 上传
qinyoug
- 粉丝: 7
- 资源: 30
最新资源
- 前端面试必问:真实项目经验大揭秘
- 永磁同步电机二阶自抗扰神经网络控制技术与实践
- 基于HAL库的LoRa通讯与SHT30温湿度测量项目
- avaWeb-mast推荐系统开发实战指南
- 慧鱼SolidWorks零件模型库:设计与创新的强大工具
- MATLAB实现稀疏傅里叶变换(SFFT)代码及测试
- ChatGPT联网模式亮相,体验智能压缩技术.zip
- 掌握进程保护的HOOK API技术
- 基于.Net的日用品网站开发:设计、实现与分析
- MyBatis-Spring 1.3.2版本下载指南
- 开源全能媒体播放器:小戴媒体播放器2 5.1-3
- 华为eNSP参考文档:DHCP与VRP操作指南
- SpringMyBatis实现疫苗接种预约系统
- VHDL实现倒车雷达系统源码免费提供
- 掌握软件测评师考试要点:历年真题解析
- 轻松下载微信视频号内容的新工具介绍