腾讯服务器有多少台 微信,腾讯官方写论文:微信的技术架构有多复杂

微信的后端包含超过3000项移动服务,每天处理数十亿次请求。其微服务架构分为入口跳转、共享跳转和基本服务。论文介绍了微信的过载控制系统DAGOR,它在服务中立性和后续过载控制方面表现出色,确保服务的稳定性和用户满意度。DAGOR通过检测和接纳控制策略,以及基于用户ID的动态优先级分配,有效应对了大规模微服务的过载问题。
摘要由CSDN通过智能技术生成

原标题:腾讯官方写论文:微信的技术架构有多复杂

腾讯旗下的微信从一个通信工具变成一个庞大平台,究竟经历了什么?微信开发者团队最近一篇论文“Overload Control for Scaling WeChat Microservices(超大规模微信微服务中的过载控制)”透露了部分细节,主要讲述了微服务的过载控制。

基于这篇论文,本文核心要点有二。其一,解析微信的后端; 第二,解析微信五年生产化运行过程中,得到实践检验的过载控制系统DAGOR的设计思路。这套系统在设计上专门考虑到微服务架构的特殊性,如果你希望为自己的微服务制定策略,那么本文无疑是一份极好的上手指南。

截至目前,微信后端共包含超过3000项移动服务,其中包括即时消息收发、社交网络、移动支付以及第三方验证等等。该平台每天接收到的外部请求量在 10^10-10^11次之间,其中每一项请求都会触发更多的内部微服务请求,这意味着微信后端整体每秒需要处理数亿次请求。

微信的微服务系统能够在微信业务系统中的2万多台设备上运行超过3000项服务。而随着微信的广泛普及,这一数字仍然不断增加……伴随着微信的不断发展,微服务系统一直在快速迭代并进行服务更新。举例来说,从2018年3月到5月,微信的微服务系统每天平均经历近千次变化。

微信将其微服务分类为“入口跳转”服务(用于接收外部请求的前端服务)、“共享跳转”服务(中间层协调服务)以及“基本服务”(不向任何其它服务扇出,因此可充当请求接收方的服务)。

a55e5916e163bd1ea4e979d7b948aa99.png

图:微信的微服务架构

以普通的单日运行场景为例,微信的峰值请求率约为每日平均值的3倍。在一年中的某些特定时段(例如在中国的农历新年期间),峰值工作负载甚至有可能增长至每日平均值的10倍。

基于大规模微服务平台的过载控制挑战

“Overload control… is essential for large-scale online applications that need to enforce 24×7 service availability despite any unpredictable load surge.”(过载控制……对于大规模在线应用程序而言至关重要,这些应用程序需要在遭遇不可预测的负载激增时实现24 x 7全天候服务可用性。)

传统的过载控制机制专门面向具有少量服务组件、“入口”相对狭窄且依赖性较为普通的场景所设计。

“… modern online services are becoming increasingly complex in their architecture and dependencies, far beyond what traditional overload con

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值