消息队列是重要的分布式系统组件,在高性能、高可用、低耦合等系统架构中扮演着重要作用。可用于异步通信、削峰填谷、解耦系统、数据缓存等多种业务场景。本文是关于消息队列(MQ)选型和常见问题的精心整理。在这篇文章中,我们将详细介绍消息队列的概念、作用以及如何选择适合自己需求的消息队列系统。
在上一篇《 9 本醍醐灌顶的计算机好书》推文中,我们分享了腾讯程序员们强烈推荐的计算机经典图书,涵盖了计算机理论科学、软件工程等帮助程序员夯实地基的基础知识。这些基础知识,是程序员在今后的职业生涯中,赖以生存的核心竞争力之一。 但正如取经路上的劫难各不相同,程序员也很难靠一套棍法解决所有问题。于是,这期我们推荐的书籍,是能帮助程序员实现阶层跃迁、视野开拓、站位升维的“道之书”。希望大家在追求技术极致的同时,也能跳出技术的局限,用更高维的视角去剖析问题的本质,用更极致的技术构建问题的解法。
过去几年的开发生涯,我一直都在思考 技术成长/核心竞争力 这些命题。 程序员这个行业面临的年龄危机和焦虑感是前所未见的,这些命题也将伴随程序员的整个职业生涯。在计算机软件工程的一些经历著作里面,前辈们也给出了不少关于这些方面的参考。但正如你无法只通过阅读理论而学会游泳一样,正如好的架构设计是慢慢地从解决问题和大量实践中生长出来的一样,真正的答案需要在大量的项目经验和编码实践中不断寻找。 我想,我的答案可能都藏在过程里面。作为一名非典型的前端开发,无论是在初期转做服务端开发工程师,还是负责开发亿级流量的前端监控接入层服务,又或是前端开发经历,虽说走了不少弯路,但都锻炼了我的技术能力,拓宽了我的技术视野,并且带给我很多解决问题的思维。 对于技术需要怎么具体地去学?项目需要怎么具体地去做?这些竞争力是不是能伴随我们度过 35 岁的门槛?希望我能通过这篇文章的复盘给出一些答案,同时能给各位读者一些启发。让我们一起共同面对这高悬头上的达摩克利斯之剑。
在软件架构中,限流是一种控制资源使用和保护系统安全的重要机制。它通过限制在一定时间内可以处理的请求数量,来防止系统过载。
X-Stor 是腾讯内部根据目前 NoSQL 领域不同业务有不同的数据模型、成本、性能的需求而研发的多模存储系统,目前支持 KV、时序、特征存储等多种模态的存储。X-Stor 的目标是基于同一个存储底座为不同协议和存储引擎提供相同的底层能力,一致性上,支持强一致/最终一致/有界一致性等多种一致性协议;存储介质上,支持数据分层、支持内存、SSD,COS 等不同介质满足用户不同需求;在容灾上,支持多 AZ、异地分布、流水备份、秒级回档等能力。 目前 X-Stor 在腾讯内部承载了包括 QQ/Qzone、微信 C2C、微信支付、广告特征、监控系统等大量关键基础业务。对外承载了多家头部车企的传感器数据监控业务。 下文主要介绍这篇论文以及 X-Stor 的多模型架构和对多租户的支持。
调度模块在很多系统中都是常用的模块,比如实习生的每天签到邮件,预约银行的业务短信,学习通的上课通知,腾讯视频push中台的任务下发,调度系统在中间起到关键作用。