Posts in 2022
-
超大规模的企业级微服务 HTTP 框架 — Hertz 正式开源!
Tuesday, June 21, 2022 in 新闻
今天,经过了字节跳动内部一年多的使用和迭代,高性能企业级 HTTP 框架—— Hertz,已在 CloudWeGo 正式开源啦!Hertz 已经成为了字节跳动内部最大的 HTTP 框架,线上接入的服务数量超过 1 万, 峰值 QPS 超过 4 千万,具有 高易用性 、 易扩展 、低时延的特点。对于字节跳动服务框架团队和 CloudWeGo 而言,Hertz 将不仅仅是一个开源项目,它也是一个真实的超大规模企业级实践。 项目地址:https://github.com/cloudwego/hertz …
-
字节跳动开源 Go HTTP 框架 Hertz 设计实践
Tuesday, June 21, 2022 in 新闻
01 前言 Hertz 是字节跳动服务框架团队研发的超大规模的企业级微服务 HTTP 框架,具有高易用性、易扩展、低时延等特点。在经过了字节跳动内部一年多的使用和迭代后,如今已在 CloudWeGo 正式开源。 目前,Hertz 已经成为了字节跳动内部最大的 HTTP 框架,线上接入的服务数量超过 1 万,峰值 QPS 超过 4 千万。除了各个业务线的同学使用外,也服务于内部很多基础组件, 如:函数计算平台 FaaS、压测平台、各类网关、Service Mesh 控制面等,均收到不错的使用反馈。 …
-
Release v0.1.0
Monday, June 20, 2022 in Hertz
Feature [#70] feat: 增加 hz 脚手架。 [#64] feat: 增加 Hertz Request & Response 到 net/http Request & ResponseWriter 的适配器。 [#45] feat: 添加 ctx.Body() 方法。 [#44] feat: 在 request header 上添加 VisitAllCustomHeader 方法,使得传入的函数 f 只作用在用户自定义的 header 上(除了 cookie, …
-
Release v0.3.2
Thursday, June 02, 2022 in Kitex
Feature [#473] 功能 (grpc): 为 Kitex gRPC unary 模式增加短连接功能。 [#431] 功能 (limiter): 支持自定义的限流实现,接口增加了请求参数的传递; 修复多路复用场景下 Server 的 QPS 限流器问题,添加基于 OnMessage 的限流; 调整默认的限流生效时机,只有使用框架 QPS 限流且非多路复用的场景下,才使用基于 OnRead 的限流。 Optimize [#465] 优化 (ttheader): Client 端 …
-
从 CloudWeGo 谈云原生时代的微服务与开源
Thursday, May 26, 2022 in 新闻
从 CloudWeGo 谈云原生时代的微服务与开源 本文整理自罗广明在 DIVE 全球基础软件创新大会 2022 的演讲分享,主题为《从 CloudWeGo 谈云原生时代的微服务与开源》。 01 项目创造的思考与哲学 我们团队经常会被人问到,你们为什么创造一个新的项目?我认为这是一个哲学问题。 纵观整个开源社区,每个时间段都会有各种各样的项目被重复地创造出来,这其中的大部分项目很快便销声匿迹了,只有一部分项目能够存活下来。 当旁观者看到这样一番景象时,渐渐地,越来越多的人停留于项目搜寻,而放 …
-
字节微服务框架的挑战和演进
Thursday, May 19, 2022 in 新闻
字节微服务框架的挑战和演进 2014 年以来,字节跳动内部业务的快速发展,推动了长连接推送服务,它们面临着高并发的业务需求问题,对性能和开发效率都有很高要求。当时的业务,大部分都是由 Python 开发,难以应对新出现的问题。 项目负责人在一众现存的技术栈中选择了 Golang 这一门新兴的编程语言,快速解决了性能和开发效率的问题。随后,字节跳动内部开始逐渐推广使用 Golang 进行服务开发。 2016 年, 第一代 Golang RPC 框架 Kite 正式发布。Kite …
-
Release v0.3.0
Friday, April 29, 2022 in Kitex
Feature [#366, #426 ] 功能(client): 客户端支持预热操作 [#395 ] 功能(mux): 连接多路复用支持优雅关闭 [#399 ] 功能(protobuf): 定义 fastpb protocol API 并在编解码模块对应支持 Optimise [#402 ] 优化(connpool): 导出 pkg/remote/connpool 里的 getCommonReporter [#389 ] 优化(rpcinfo):填充由 defaultCodec 解码得到 …
-
Release v0.2.2
Thursday, April 28, 2022 in Netpoll
Improvement Fix: Loops 缩容不再全部重置 Chore: mcache bsr 计算使用 math/bits.Len 代替,以提升性能。 Feat: 修复 LinkBuffer Close 时没有回收 caches 的问题(不是内存泄漏) Fix Fix: 修复短链接 send&close 场景无法触发 OnRequest 回调的问题 Fix: 修复 zcReader 读到 io.EOF 后丢失部分数据的问题 Fix: 修复 flush …
-
CloudWeGo 助 NextArch 基金会推动标准化建设
Friday, April 01, 2022 in 新闻
导语:2022 年 3 月,NextArch 基金会正式成立微服务技术小组,致力于推动微服务技术和开源生态的持续发展,根据各个企业在微服务生产实践中遇到的问题,针对不同行业和应用场景输出标准化解决方案, 并且联合 PolarisMesh、TARS、go-zero、GoFrame、CloudWeGo 和 Spring Cloud Tencent 等开源社区提供开箱即用的实现,降低终端用户的使用门槛。 来自腾讯、字节跳动、七牛云、快手、BIGO、好未来和蓝色光标等多家企业的技术专家已经加入技术小 …
-
一文了解字节跳动微服务中间件 CloudWeGo
Monday, March 28, 2022 in 新闻
云原生时代,各行各业的基础架构都在经历微服务架构转型,研发效率和稳定性是所有互联网公司需要考虑的问题。开发者想要搭建微服务,离不开配套的微服务治理,如治理平台、监控、链路跟踪、注册/发现、配置中心、服务网格等。 随着 Golang 逐渐成为云原生时代的主要编程语言,基于 Golang 的微服务中间件在开源社区有着较强的诉求。 字节跳动也同样面临这些问题。2014 年,字节跳动引入 Golang 解决长连接推送业务面临的高并发问题,两年后,内部技术团队基于 Golang 推出了一个名为 Kite …