面对高并发,许多架构师都有这样一种纠结的情绪——怕它不来,又怕它乱来。
高并发,意味着大量活跃用户在同一时间段访问你的网站,大量的数据涌入你的服务器,你的心一瞬间提到了嗓子眼。服务器的处理和响应越来越慢,越来越慢……然后,它说,臣妾累了,有的请求就不处理了。客服那边,不停有来自用户的电话响起,运维开始向着服务器祈祷。然而他们的恳求并没有被听到,服务器,它崩了。这时候,运维哭了,架构师也哭了。
多么甜蜜的疼痛。
如果没有遇见过高并发,也是一种值得长吁一声的遗憾,毕竟工作几年不会处理高并发的比比皆是。若听闻谁设计过扛得住 QPS 几百万的架构,怕是很多人都会发出这样的问题:嚯!哪个大厂的大佬?
那么,什么样级别的才算高并发?
有人说,千万级别的 PV 吧。这话就外行了,我们看高并发的时候,不能光看 PV,还要看 QPS,即每秒响应请求数。如果你的 QPS 能够以万为单位,才算得上有底气说自己高并发。至于那些处理几百 QPS 就能崩掉的服务器……
说起经典的高并发场景,那必须要数阿里的“双 11”,腾讯和百度的红包,以及微博的明星恋爱分手出轨一条龙。
2018 年 11 月 11 日,第十个“双 11”。当日 0 点 21 秒,天猫“双 11”总成交额突破 10 亿元,24 时,累计实现销售额 2135 亿。你不妨猜猜,这场全民购物狂欢的背后,是每秒多少次并发响应?
2019 年,百度首次成为央视春晚独家互动合作伙伴。根据百度官方数据,除夕当晚全球观众参与百度 APP 互动次数达到 208 亿次,百度 DAU 峰值突破 3 亿。
再说说微信,现在每年春节的乐趣之一就是在各个微信群里抢红包。2017 年除夕,微信用户共收发 142 亿个红包,当日 24 时,微信红包祝福达到峰值,每秒收发 76 万个。
最让人心疼的还是微博程序员,因为指不定什么时候明星们就突然恋爱分手出轨,吃瓜群众疯狂转评赞导致服务器宕机,程序员含泪加班扩容。
高并发十分考验架构师功底,它也是分布式架构设计中必须考虑的因素之一。要知道,光靠服务器堆是没有出路的。
让业务如丝般顺滑,给用户最好的交互体验,是架构师们永恒的追求。但是很多公司都没有高并发场景,作为架构师,想看业界怎么优化的,网上一搜尽是扯犊子,没几个真正实践过,全在嘴上谈兵。又或者自身高可用经验不足,面对迅速增长的业务带来的高并发,只能手足无措。
想看看别人是怎么面对高并发的?想知道别的公司是怎么设计高可用架构的?不妨来 QCon 北京 2019 看看,这里有多个可参考的实践案例,干货满满,或许能对你有所启发。
演讲:蚂蚁金服面对亿级并发场景的组件体系设计
演讲嘉宾:蚂蚁金服技术专家吕丹(凝睇)
从工具型的单体应用,演进到高可用、高性能、高灵敏且支撑众多业务场景的超级 App,在这期间支付宝服务端核心组件矩阵与架构体系完成了弹性稳定的性能改造,并成功支撑“双十一支付交易”及“新春红包”等高并发业务场景。同时,相应的技术架构逐步得到沉淀并对外输出,帮助更多传统金融业务帮助面向移动互联网的架构转型,从而实现技术的可复制性与良好的应用能力。
演讲:从高并发到极端并发:百度 Feed 与春晚红包的高可用实践
演讲嘉宾:百度主任架构师吴永巍
百度 Feed 信息流推荐系统,过去几年业务飞速发展,在流量高速增长、推荐机制复杂化的背景下,对系统高可用的挑战大幅增加。经过多次架构演进,扛住了流量和分发量数百倍的增长,支持了百度 App、好看视频、全民小视频等多个产品的快速发展。 此外,2019 百度春晚红包项目,准备时间只有短短一个月,央视春晚口播带来的瞬间并发属于极端高并发,千万级 QPS,可用性挑战巨大。春晚项目技术团队通过全方位针对性的架构设计和优化,顺利保障了百度春晚活动的如丝般顺滑。 从数万 QPS 的高并发系统,到数千万 QPS 的极端并发系统,积累了大量高可用设计与保障的实践经验,本次演讲将做分享。
演讲:高并发实时分布式交易系统的实践与思考
演讲嘉宾:火币网高级技术总监秦金卫
高并发分布式交易系统一直是一个技术难题。如果我们再加上低延时强实时的要求,以及传统金融系统的稳定性和一致性,还要 BAT 级别的系统吞吐能力和高可用性,这就对系统架构提出了巨大的挑战:如何设计账户系统、如何高效可靠的处理实时清算、如何实现高可用的网关、如何考虑和选择合适的技术框架、如何提升系统的监控和运维效率、如何利用微服务进行交易系统的设计与治理,等等这一系列问题。 本议题从一个亿级订单量的低延迟实时交易系统案例出发,通过阐述高并发分布式系统的架构原则,分析实现过程中的各种尝试和痛点,以及分享实际工作过程的一些最佳实践,特别是在做内存化改造和流式处理技术改造的一些经验心得,从整体到局部、从原理到细节,剖析高并发分布式交易系统的方方面面。
演讲:Azure Compute – sharing tips and tricks for building hyper-scale globally distributed systems(英文演讲)
演讲嘉宾:Microsoft Azure Compute Product Architect Boris Scholl
As software and services do not know any boundaries it becomes more and more important to think about what it truly means to build services on a global scale. In this session, we will give you an inside look at the architecture, development and operations of services that are running at a global scale as well as share some best practices and lessons learned from building out some of Azure’s largest cloud services.
由于软件和服务无法定义边界,因此考虑构建全球规模服务的真正含义变得日益重要。在本议题中,我们将向您详细介绍在全球范围内运行的服务的架构、开发和运营,分享一些最佳实践,以及在构建 Azure 最大的云服务的过程中获得的经验教训。
演讲:声明式自愈系统——高可用分布式系统的设计之道
演讲嘉宾:阿里巴巴高级技术专家王昕
大型电商平台和云计算平台的后台服务都是典型的超大规模分布式系统。作为企业用户的基础服务商,一方面平台的稳定性和高可用能力不容有失,另一方面需要在分布式系统规模持续扩大的情况下避免运维成本的上升,因此声明式自愈系统的设计成为必须。本次分享将结合分布式系统理论和作者在多家互联网和云计算企业的工作经验,围绕高可用分布式系统的设计之道分享以下内容:
演讲:Grab 核心派单系统中的高质量数据集的收集与应用
演讲嘉宾:Grab 核心派单系统团队负责人沈玉梁
Grab 的核心派单系统在不断的演化中逐步引入了机器学习的解决方案以适应快速升级的复杂业务需求。同时,新的解决方案不断提升派单的有效性和准确性。而如何提供实时、高质量的数据集是保证机器学习结果的重中之重。现有派单系统的机器学习模型中,特定区域内的乘客、订单和司机形成了多维度的特征矩阵。假设单一城市平均每秒发生 100 个订单请求,每个订单平均需要为 100 个司机进行模型运算,每个司机需要为此提取 50 个特征,而平均生成每个特征需要 10 次额外运算。与此同时,整个系统需要为东南亚几乎所有的重要城市提供派单服务。如何及时生成、存储、提取数百万 / 秒的特征数据集是整个派单系统内的一个技术难点。我们通过内置于 FeatureBank 系统中的一系列优化策略和降维算法有效地降低了复杂度和延迟,极大地提高了派单结果的准确性和有效性。
演讲:超大规模高可用性云端系统构建之禅
演讲嘉宾:Mobvista 技术副总裁兼首席架构师蔡超
本讲座是作者近十年构建云端系统的经验总结。云端高可用性系统的构建与本地系统构建有着诸多不同之处,本讲座通过以构建超大规模移动广告平台为例,来讲述云端高可用性系统构建的要点。
演讲:高可用分布式流数据存储设计
演讲嘉宾:京东集团中台技术架构部资深架构师李玥
每天,超过千亿交易相关的数据在京东数千个系统中高速流转。实现数据流在超大规模集群系统之间高性能流转同时,确保数据的高可靠、高可用、一致性对京东的消息中间件系统是一项艰巨的技术挑战。
高性能、高可用、高可靠的流数据存储提供数据持久化能力,是未来分布式计算不可或缺的基础设施之一。其不仅用于构建分布式消息中间件,在诸多计算场景中均有广泛的应用。本次演讲的主要介绍了京东高可用分布式流数据存储系统的架构,内容涵盖:流数据存储集群的高可用架构设计;数据强一致性保证:改进于 RAFT 的流数据选举和复制机制;理解数据流的特性和针对性性能优化手段。
演讲:降级预案在同程艺龙的工程实践
演讲嘉宾:同程艺龙资深架构师王俊翔
现代分布式系统设计中,面向容错、降级熔断设计是常规的、不可或缺的功能。在复杂的业务架构下,例如从商品的搜索、交易到供应链,整体的系统链路会长,系统间的依赖关系非常复杂,由于业务多变性、复杂性的存在,如何简单的切入到整体链路中,帮助系统快速、无侵入的实现降级熔断措施,或是帮助整体链路实现业务降级预案,也随之变得异常困难。在日趋增长的业务下,随之增长的降级措施散落在各个系统代码中,日积月累,降级的治理也变得异常困难,原先的降级措施也逐渐演变成系统中的一个不稳定因素。在这样的需求背景下,需要系统性的、完备的降级治理架构协调运作。同程艺龙结合实践经验,从数据采集、指标计算、资源降级恢复、链路预案管理、故障诊断多个方面,探索服务降级体系化建设的可落地架构。
演讲:云原生架构下的混沌工程实践
演讲嘉宾:阿里巴巴高级技术专家周洋
越来越多的企业选择基于云原生技术构建系统架构,希望可以构建构建容错性好、易于管理和便于观察的松耦合系统。在演进的过程中,可能会经历云迁移(Cloud-Migrate)、云就绪(Cloud-Ready)和云原生(Cloud-Native)三个阶段。每个阶段都需要围绕一些新技术、新理念来升级系统架构和组织模式。如何在变化的过程中保障系统稳态的一致性,为"飞行中的飞机替换引擎"是每位系统负责人要关注的问题。
混沌工程是一种在生产环境周期性引入故障变量,验证系统对非预期故障防御的有效性的实验思想。实验能力不绑定特定云原生技术,但是技术实现会随着主流技术发展而演进,并衍生出一些领域最佳实践。阿里从最早引入混沌工程解决微服务的依赖问题,到业务服务、云服务稳态验证,进一步升级到公共云、专有云的业务连续性保障,积累了比较多的实践经验。本次分享会从云迁移、云就绪、云原生三个角度入手,介绍实施混沌工程的一些方法原则和技术工具。
想了解更多可参考案例?2019 年 5 月 6-8 日, QCon 北京 2019 将与你分享 100+ 资深一线开发人员的实践经验,涉及 26+ 热门领域,也许能给你带来技术难题的创新解法。9-10 日还有深度培训,将聚焦深度学习与推荐系统应用、目标识别在线服务、微服务架构、大规模后端业务系统基础架构等内容,不容错过。
点击 「 阅读原文 」或识别二维码即可查看大会完整日程。大会门票 9 折优惠最后一天,现在报名立减 880 元,团购还可享受更多优惠!席位有限,马上拿起电话联系票务小姐姐 Ring 吧:电话 / 微信:17310043226
1、头条易读遵循行业规范,任何转载的稿件都会明确标注作者和来源;
2、本文内容来自“InfoQ”微信公众号,文章版权归InfoQ公众号所有。