Posts in 2021

  • 字节跳动 Go RPC 框架 Kitex 性能优化实践

    Thursday, September 23, 2021 in 新闻

    前言 Kitex 是字节跳动框架组研发的下一代高性能、强可扩展性的 Go RPC 框架。除具备丰富的服务治理特性外,相比其他框架还有以下特点: 集成了自研的网络库 Netpoll;支持多消息协议(Thrift、Protobuf)和多交互方式(Ping-Pong、Oneway、 Streaming);提供了更加灵活可扩展的代码生成器。 目前公司内主要业务线都已经大范围使用 Kitex,据统计当前接入服务数量多达 8k。Kitex 推出后,我们一直在不断地优化性能,本文将分享我们在 Netpoll …

    更多

  • 字节跳动开源内部微服务中间件 CloudWeGo

    Tuesday, September 07, 2021 in 新闻

    开源背景 CloudWeGo 是一套由字节跳动开源的、以 Go 语言为核心的、可快速构建企业级云原生架构的中间件集合,专注于微服务通信与治理,具备高性能、可扩展、高可靠的特点。 字节跳动内部使用 Golang 作为主要的业务开发语言,我们支持着数万个 Golang 微服务的可靠通信,经过数量众多的微服务和海量流量的验证,我们已经有了较为成熟的微服务最佳实践,于是考虑将内部的实践开源出去丰富社区生态。 但微服务相关的项目较多,每个项目单独开源对外部用户并不友好,为了更好地让大家聚焦于微服务, …

    更多

Posts in 2020

  • 字节跳动在 Go 网络库上的实践

    Sunday, May 24, 2020 in 新闻

    本文选自“字节跳动基础架构实践”系列文章。 “字节跳动基础架构实践”系列文章是由字节跳动基础架构部门各技术团队及专家倾力打造的技术干货内容,和大家分享团队在基础架构发展和演进过程中的实践经验与教训,与各位技术同学一起交流成长。 前言 RPC 框架作为研发体系中重要的一环,承载了几乎所有的服务流量。随着公司内 Go 语言使用越来越广,业务对框架的要求越来越高,而 Go 原生 net 网络库却无法提供足够的性能和控制力,如无法感知连接状态、连接数量多导致利用率低、无法控制协程数量等。 为了能够获 …

    更多