Posts in 2022
-
国内首个基于 Rust 语言的 RPC 框架 — Volo 正式开源!
Tuesday, August 30, 2022 in 新闻
项目:
Volo 是字节跳动服务框架团队研发的轻量级、高性能、 可扩展性强、易用性好的 Rust RPC 框架,使用了 Rust 最新的 GAT 和 TAIT 特性。 在字节内部,Volo 已经落地多个业务和基础组件,并且取得了超预期的性能收益(与 Go 版本对比,不那么公平)。 Volo 与其它 CloudWeGo 开源项目一样,坚持内外维护一套代码,为开源使用提供了强有力的保障。同时,我们观察到 Rust 开源社区在 RPC 框架这块还比较薄弱, Volo 的开源希望能为社区的完善贡献一份力量,同时 …
-
Release v0.3.0
Monday, August 29, 2022 in Hertz
项目:
Feature [#182] feat: 添加服务注册 & 服务发现 & 负载均衡。 [#6] feat: 添加 zookeeper 服务注册与发现的扩展。 [#7] feat: 添加 nacos 服务注册与发现的扩展。 [#8] feat: 添加 Consul 服务注册与发现的扩展。 [#9] feat: 添加 polaris 服务注册与发现的扩展。 [#14] feat: 添加 etcd 服务注册与发现的扩展。 [#15] feat: 添加 servicecomb 服务注册 …
-
Release v0.4.0
Friday, August 26, 2022 in Kitex
项目:
重要变更介绍 功能 重试功能增强:支持自定义结果重试;支持请求粒度配置重试,详见 重试指南 Frugal(thrift): 支持了 IDL 默认值;使用 Frugal 可以支持不生成编解码代码,详见 frugal Tool-Protobuf:结合 go_package 配置支持依赖外部库,详见 protobuf IDL 的注意事项;支持从文件扩展名猜测 IDL 的类型,生成 proto 代码时无需再指定 type 参数 Fastpb(protobuf): 支持 fastpb 优化 pb 编解 …
-
Release v0.2.0
Friday, July 22, 2022 in Hertz
项目:
Feature [#124] feat: 增加参数控制是否使用 hijackConnPool。 [#116] feat: update 也可使用模板更新 handler 及 middleware。 [#130] feat: 如果 Cookie.Value 中存在非法字符,则打印告警日志。 [#143] feat: 增加一个接口支持自定义信号捕捉逻辑,以便根据场景调节优雅退出需要应对的信号类型。 [#114] feat: 标准网络库 Read …
-
超大规模的企业级微服务 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 …