每日一博 | 字节跳动微服务架构体系演进
本文整理自字节跳动(火山引擎)基础架构/服务框架团队负责人成国柱在 QCon 2021 的分享,主要介绍了 2018-2021 年间,服务框架团队在 Golang 服务框架和 Service Mesh 上的技术实践和经验总结。 字节跳动微服务架构概述 在字节跳动,微服务架构的特征可以被归纳为 4 点,如下图所示: 首先是规模大、增长快。近三年来,字节跳动的微服务数量和规模迎来快速发展。2018 年,我们的在线微服务数大约是 7000-8000,到 2021 年 5 月,这一数字已经突破 5 万。伴随快速增长,服务框架团队也遇到了非常多挑战。 其次是全面容器化、PaaS 化。字节跳动的在线微服务,超过 90% 都运行在容器里。所有上线都通过 PaaS 化平台进行,这意味着线上不会存在物理机部署这种模式。这种做法既有一些挑战:增加调度复杂性;也带来了一些便利性:有利于新功能的推广。 第三,字节跳动的技术体系以 Golang 语言为主。根据最新的调查统计,公司里有超过 55% 的服务是采用 Golang 的,排名第二的语言是前端的 NodeJS,之后是 Python、JAVA、C++,Rus...
