Posts in 2024

  • Release v0.9.0

    Monday, March 04, 2024 in Kitex

    v0.9.0 针对 Thrift 提供了两个重要的功能:Thrift Streaming 和 Multi-Service,发布多个 RC 版本在内部试点收集反馈,所以正式版本姗姗来迟。 下面就重要变更做一些介绍: 重要变更介绍 功能 1. Thrift Streaming 基于 gRPC(HTTP2) 的 Thrift Streaming 功能正式 Release,用户可以使用 Thrift IDL 定义自己的 Streaming 请求,为保持 IDL 解析的兼容性,Kitex …

    更多

Posts in 2023

  • Release v0.8.0

    Thursday, November 30, 2023 in Kitex

    重要变更介绍 功能 1. gRPC 协议支持多 Service Kitex gRPC 支持多 Service 的能力,详见 Multiple Services. 2. Acquire Kitex RPCInfo 提供 kitexutil 方法以方便从 RPCInfo 获取 rpc 信息, 详见 Acquire RPC information. 优化 1. Map 泛化调用 Map 泛化支持通过 SetBinaryWithByteSlice 设置对 binary 字段返回 []byte。 2. …

    更多

  • Release v0.7.2

    Wednesday, September 27, 2023 in Kitex

    重要变更介绍 功能 1. 重试: 限制重试请求占比 该特性优化了备用请求的可用性:如某个请求超过重试等待时间,会触发一个备用请求,但如果该请求在RPC超时阈值之内,最终可以正常处理,因而不会被当做失败请求,这会在偶发网络异常时导致大量重试请求,增加服务端压力甚至引起雪崩。 建议更新现有代码: 使用 retry.NewRetryContainerWithPercentageLimit() 来构造 RetryContainer,限制重试请求占比; 在 Client …

    更多

  • Release v0.7.0

    Monday, August 14, 2023 in Kitex

    重要变更介绍 功能 1. gRPC 压缩支持 实现了 KiteX gRPC 的压缩功能支持,可以使用例如 gzip 等压缩方法减小 payload 体积 2. GLS 使用 local-session 组件兜底请求上下文传递,解决用户没有传递 ctx 导致的微服务断链问题 优化 1. Unknown Fields 无序列化优化 实现无序列化的 unknown field 功能,无序列化unknown fields方案在FastCodec上性能提升约6x ~ 7x,详见:#1017 2. …

    更多

  • Release v0.6.1

    Monday, June 19, 2023 in Kitex

    详细变更 Hotfix: [#988] hotfix(code_gen): 修复slim模板代码生成失败问题

    更多

  • Release v0.6.0

    Wednesday, June 14, 2023 in Kitex

    重要变更介绍 功能 1. GRPC 元信息传递 client 默认将 header 设置到 ctx,外部方法可利用 GetHeaderMetadataFromCtx 获取元信息。可用于 transmeta 内获取元信息并设置到 rpcinfo 中,或在中间件内获取 header 信息。 2. Kitex 配置模块重构 增加重试、熔断、超时、限流的 config item,支持 configmanager 中间件定义的接口,用于支持与外部配置中心的扩展集成。 3. Kitex - …

    更多

  • Release v0.5.3

    Friday, April 21, 2023 in Kitex

    重要变更介绍 功能 异常重试:添加配置,支持不对超时错误进行重试,用于请求非幂等的场景。 代码生成工具:支持 windows 环境使用。 超时错误类型拆分:支持细粒度的超时错误类型,将 ErrRPCTimeout 细分为三个错误类型:超时、业务cancel、业务timeout。 Thrift FastCodec:支持 unknown fields。 unknown fields 使用背景:在 thrift 中,IDL 内增加字段对未更新 IDL 的一方是无感知的,必须更新 IDL 与生成代码以获 …

    更多

  • Release v0.5.0

    Wednesday, March 08, 2023 in Kitex

    重要变更介绍 功能 1. Fallback 功能: 支持 Client 侧的 Fallback 功能 业务在 RPC 请求失败后通常会有一些降级措施保证有效返回(比如在请求超时、熔断后,构造默认返回),Kitex 的 Fallback 支持对所有异常请求进行处理。 同时,因为业务异常通常会通过 BaseResp 字段返回,所以也支持对 Resp 进行处理。详见 Fallback。 2. Kitex - gRPC:Client 增加 TLS …

    更多

Posts in 2022

  • 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, August 26, 2022 in Kitex

    重要变更介绍 功能 重试功能增强:支持自定义结果重试;支持请求粒度配置重试,详见 重试指南 Frugal(thrift): 支持了 IDL 默认值;使用 Frugal 可以支持不生成编解码代码,详见 frugal Tool-Protobuf:结合 go_package 配置支持依赖外部库,详见 protobuf IDL 的注意事项;支持从文件扩展名猜测 IDL 的类型,生成 proto 代码时无需再指定 type 参数 Fastpb(protobuf): 支持 fastpb 优化 pb 编解码, …

    更多