9月8日,字节跳动正式宣布开源CloudWeGo,这是一个以Go语言为核心、专注于微服务通信和治理的项目集合。
基于字节跳动基础设施团队构建分布式系统的成功实践,CloudWeGo具有高性能、可扩展、高可靠性的特点。
抖音等App的亿级流量背后,是字节跳动基础设施团队研发的技术基础支撑着庞大的微服务生态。
今年以来,这个团队维护的线上微服务数量增长了近3%,达到了5万个。
CloudWeGo也在这个过程中不断迭代和完善。
目前,CloudWeGo 有四个项目集合: 1、Kitex:Kitex 是字节跳动开发的下一代高性能、高扩展性的 Golang RPC 框架。
除了丰富的服务管理功能外,还集成了自主开发的网络库Netpoll,支持多种消息协议和多种交互方式,提供更灵活、可扩展的代码生成器。
2、Netpoll:这是一个基于Golang的高性能、I/O非阻塞的网络框架,专注于RPC场景。
它借鉴了evio和netty的优秀设计,性能优异,更适合微服务架构。
3. Thrfitgo:Golang实现的Thrift编译器,支持插件机制,完整的Thrift IDL语法和完整的语义检查。
后端目前支持Go语言。
4、netpoll-http2:基于HTTP2官方源码,使用Netpoll提供高性能的HTTP2通信。
字节跳动相关技术总监表示,CloudWeGo不仅是一个开源项目,更是一个企业级超大规模实践项目。
“通过开源,我们希望CloudWeGo能够丰富云原生社区的Golang工具体系,为更多的开发者和企业构建云原生大规模分布式系统,提供现代化的、资源高效的技术解决方案。
报道称,字节跳动基础设施团队将在内部和外部维护一套CloudWeGo代码,以进行统一迭代演进。