Posts in 2022
-
Kitex Proxyless 之流量路由:配合 Istio 与 OpenTelemetry 实现全链路泳道
Tuesday, November 08, 2022 in 新闻
项目:
导语:Kitex Proxyless 是 Kitex 服务能够不借助 envoy sidecar 直接与 istiod 交互,基于 xDS 协议动态获取控制面下发的服务治理规则,并转换为 Kitex 对应规则来实现一些服务治理功能,如流量路由。基于 Kitex Proxyless,能够实现 Kitex 无需代理就可以被 ServiceMesh 统一管理,进而实现多种部署模式下的治理规则 Spec、治理控制面、治理下发协议、异构数据治理能力的统一。本文在 biz-demo 中使用 Kitex …
-
Release v0.4.3
Wednesday, November 02, 2022 in Kitex
项目:
重要变更介绍 功能 扩展 client/server 生成模板 :新增 client/server 模板扩展功能,可以通过配置定制,适用于统一定制 suite 场景,详见扩展 Service 代码生成模板。 业务异常 :新增业务自定义异常支持,可区分于 RPC 异常返回 error,使用详见业务异常,背景详见Proposal。 请求 Profiler :新增功能可用于为不同的 RPC 请求提供成本分析统计的能力。 Context Middleware : 新增 Context …
-
Release v0.4.0
Friday, October 28, 2022 in Hertz
项目:
Feature [#289] feat: render 支持 IndentedJSON。 [#304] feat: recovery 中间件支持用户自定义错误输出格式。 [#278] feat: 增加编译 tag 控制实际使用的 json 库。 [#239] feat: 给 client 扩展复杂重试能力。 [#265] feat: 在标准网络库扩展上添加 CloseNoResetBuffer 方法。 [#258] feat: 支持 errors 的格式化。 Optimize [#295] …
-
Release v0.2.1
Wednesday, October 26, 2022 in Volo
项目:
[#61] 优化了 Volo-Thrift 的代码,移除了一些不必要的泛型参数,简化代码。 [#63] 跟进了 2022-10-20 后 nightly 编译器不再允许 TAIT elition lifetime 的问题。 [#73] 绕过了 Rust 编译器的 #100013 issue: non-defining opaque type use in defining scope。 [#65] feat: 升级 Volo-cli 的 clap 版本到 4.x。 [#72] feat: …
-
Release v0.2.0
Tuesday, October 18, 2022 in Volo
项目:
Feature [#31] 支持 Windows。 [#26] volo-grpc 增加对 service discovery 和 load balance 的支持。 [#45] volo-grpc 支持 uds。 [#32] volo-grpc 支持 metainfo 进行元信息传递。 [#30] volo-grpc Server 增加 layer_front 方法。 [#42] volo-thrift 支持 multiplex。 Optimize [#53] …
-
助力字节降本增效,大规模企业级 HTTP 框架 Hertz 设计实践
Tuesday, September 27, 2022 in 新闻
项目:
字节跳动内部 Go HTTP 框架的变迁 在正式开始介绍第一部分的内容之前,先展示一组关键词。2020 年初 Hertz 立项,2020 年 10 月,Hertz 发布第一个可用版本 。 2022 年 6 月,Hertz 正式开源。 截至目前,Hertz 在字节内部已经支撑超过 1.4 万个业务服务 , 日峰值 QPS 超过 5000 万 。 Hertz 不仅支持业务服务,同时还会横向支持字节内部的各种基础组件,包括但不限于字节跳动服务网格控制面、公司级别压测平台以及 FaaS,还包括各种业务网 …
-
高性能 RPC 框架 CloudWeGo-Kitex 内外统一的开源实践
Tuesday, September 20, 2022 in 新闻
项目:
由内至外 - 开源过渡 很多同学可能刚刚了解 CloudWeGo,先介绍一下 CloudWeGo 和 Kitex 的关系。 CloudWeGo 和 Kitex Kitex 是 CloudWeGo 开源的第一个微服务框架,它是一个 支持多协议的 Golang RPC 框架 ,从网络库、序列化库到框架的实现基本完全自研的。 特别地,Kitex 对 gRPC 协议的支持使用了 gRPC 官方的源码,但是我们对 gRPC 的实现做了 深度且定制的优化 ,所以 Kitex 支持的 gRPC …
-
Release v0.3.2
Tuesday, September 20, 2022 in Hertz
项目:
Feature [#198] feat: 添加获取 Hertz client dialer 名称的方法。 [#251] feat: Hertz server 启动日志添加网络库的名称。 Refactor [#238] refactor: 重构 Hertz client 初始化 HostClient 和 TLSHostClient 的逻辑。 Optimize [#226] optimize: 使用 “warning” 日志提示非法的 http 状态码。 Fix …
-
开源社区的长期主义与新变化 — CloudWeGo 开源社区实践
Tuesday, September 13, 2022 in 新闻
项目:
概述 CloudWeGo 开源一周年以来收获了超过 1w 的 star 数,这一年 CloudWeGo 从项目的数量、性能的提升、社区的活跃、生态的拓展等各个方面都有一些整体的变化。 同时,通过一周年的开源,我们收获了非常多的开源社区用户,这些用户在社区里也提供了很多项目的使用反馈。基于这些反馈,我们发现随着技术发展和用户业务的不停迭代,用户需求也在发生着变化。 因此我们梳理了新一代关于云原生微服务用户的画像,作为指导我们社区持续演进的重要参考。 CloudWeGo …
-
选择 Go 还是 Rust?CloudWeGo-Volo 基于 Rust 语言的探索实践
Tuesday, September 06, 2022 in 新闻
项目:
CloudWeGo 选择 Rust 语言进行探索的原因 CloudWeGo 正式官宣新一代 Rust RPC 框架 Volo 开源!CloudWeGo 为什么会选择 Rust 这门语言进行探索呢?本文首先介绍一下其中的原因。 Go 的代价 深度优化困难 Volo 早期的团队成员来自于 Kitex 项目(CloudWeGo 开源的 Golang 微服务 RPC 框架)。当时我们投入了大量的时间和精力优化 Kitex 以及其他相关基础库的性能,最终却发现实现 Go 的深度优化有些困难。 我们仅仅 …