黄斌强,美团点评高级技术总监,12 年以上互联网系统研发运营经验。2004 年加入腾讯,历任后台研发高级工程师、垂直搜索团队技术总监,主导负责过多个大规模分布式系统研发架构演进及实际运营,包括高性能 Web 服务器与缓存系统、实时计费系统、百亿级图片搜索引擎、新一代新闻搜索引擎等。2014 年加入美团,现任技术工程部高级技术总监,整体负责公司基础架构团队及基础架构平台、组件的研发,包括服务框架与服务治理、消息中间件、基础存储、容器集群管理等。主要关注包括分布式系统、服务治理、搜索引擎、大数据等技术领域。
面向现实不同的场景,系统分布式设计要点会有哪些不同?伴随着数据规模、请求访问量的增大,如何有效应对大规模带来的各种技术挑战。本专题将邀请来自一线互联网公司的技术专家,为大家分享一些大规模分布式系统的实际案例,探讨系统架构、数据一致性解决、系统高可用、自动化运维等问题的思考与解决之道。
2016 年 11 月,阿里巴巴将 RocketMQ 捐献给 Apache 软件基金会,正式成为孵化项目。RocketMQ 诞生于 2012 年,经过至今约 5 年的发展时间,经历了多次双十一海量数据的洗礼,2016 年双十一当天处理的消息量超过万亿条。本次分享将为大家带来分布式消息系统在高可用,高可靠领域的一些实践经验,同时也为大家分享 Apache RocketMQ 的未来演进方向。
互联网服务的典型特征是流量大、全年无休。作为互联网服务的最底层系统分布式存储,其性能和可用性的要求会更高。本次演讲将分享美团点评新一代 KV 存储系统 Cellar 在支撑快速增长的业务的同时,是如何演进其架构,以不断提升其可用性和性能,支撑每日万亿级的访问量。
服务化演进过程中同时带来模块功能内聚,跨进程调用增多、网络通信增多。一次 APP 端到服务端的交互愈发复杂,调用栈涉及的模块越来越多。
在一个核心模块日升级量几百的子系统,一个多语言、异构框架、缺少中间件大型分布式系统的生产环境下。
如何提供一种有效的问题定位方法,如何将 trace 机制在这样的复杂环境落地,实践过程中如何使得系统具有日志检索能力、链路追踪能力和信息透传能力。
海量业务日志是如何被格式化、如何存储、如何结合利用其中的业务信息和 trace 信息来进行价值深挖。
微信 PaxosStore 是一个分布式存储系统,创新的无租约 Paxos 工程实现,实现三园区多主多写,任意角色宕机时系统无需切换周期,真正实现实时可用,平滑服务。PaxosStore 广泛支撑微信在线应用,峰值过亿 TPS,运行在数千台服务器上。PaxosStore 在数据分区内部提供完整的串行 ACID 语义,支持键值/队列/集合等数据结构以及二维表,单表可超亿行并提供 SQL 接口支持业务快速开发,通过跨园区数据中心间的同步复制提供强一致性和高可用性。该系统在 2017 年除夕夜实践中,平稳应对百亿级每分钟的挑战。
百度的核心业务和数据库系统都依赖分布式文件系统作为底层存储,文件系统的可用性和性能对上层搜索业务的稳定性与效果有着至关重要的影响。
现有的分布式文件系统(如 HDFS 等)是为离线批处理设计的,无法在保证高吞吐的情况下做到低延迟和持续可用,所以我们从搜索的业务特点出发,设计了百度文件系统。
在百度文件系统设计中,一方面,涉及从中心化和对等模型的折衷,到元数据的扩展性,再到网络拓扑的选择等,一系列大型分布式系统中的通用问题与解决方案,
另一方面,又有在新的实时处理场景下的设计创新,怎么保证系统持续可用,怎么在不影响整体吞吐的情况下,保证99分位延迟。
在大规模分布式应用中,曾经的单体应用按横向和纵向的维度被拆分到集群的各个节点之中,为了解决服务及数据调用的问题,我们引入了分布式服务框架、分布式消息集群、分布式文件存储、分布式缓存等一系列服务。应用的拆分及分布式中间层服务的引入在提升了应用的性能及扩展性的同时也给开发带来了极大的挑战,尤其是在多团队协同的背景下,应用依赖模块分散在不同的开发环境中,给每个人搭建一套完整的环境极其困难。开发人员完成模块的开发后在本地很难进行调试或做单元测试,必须部署到线上环境才行。传统的 mock 能力在应对分布式环境下的调测又捉襟见肘,不仅单元测试代码量大,代码复用率低,而且无法模拟复杂的网络异常对应用导致的影响。
如何既享受分布式服务带给我们的好处,又享有单体应用下调测的便利性?我们需要构建一套调测框架,通过这套框架解决分布式服务所带来的服务及数据的依赖问题,从而通过一种轻量化的模式构建起单机调测能力,解决开发人员本地调测需求、提升研发效率。讲师将通过自身的经验来详细展示如何有机结合分布式服务 MOCK(微服务、MQ、Cache、File、DBProxy)、Stub 数据制作及管理、服务直连调测、契约测试保障等能力来构建一套应对研发各阶段开发需求的调测框架及方法论。
讯飞输入法经过几年的发展,已经是用户数 4 亿,活跃用户 1 亿的产品。面对过程中机房故障以及各地区响应性能的差异,产品对系统的可靠性以及响应性能提出更高的要求,之前的单机房架构无法满足这些要求。通过调研业内相应解决方案以及结合对讯飞输入法业务特点进行分析,分模式的给出解决方案。经过前后 1 年多的技术改造,成功应用在生产环境上,并带来较多收益。