Tuesday, January 18, 2022 in Kitex
功能优化 在 rpctimeout 的 middleware 的输出日志中过滤掉超时日志 调整默认日志级别为 Info 给 sentAt 变量加锁,避免单测出现 DATA RACE,实际上不会有并发问题 Bug 修复 修复客户端编码失败时连接会泄漏的问题 修复 middleware builder 中设置 TimeoutAdjust 不生效的问题 工具 修复 protobuf 的 handler 参数名 kitex 会给每个 stream server …
Thursday, December 30, 2021 in Kitex
功能优化 JSON 泛化调用场景,向服务端传递 Base 信息,从而服务端可获取 Caller 等信息 Bug 修复 修复 streaming 的 metric 上报(server侧)丢失 method 信息的问题 修复 JSON 和 HTTP 泛化中 base64 和 binary 的不兼容改动 修复 gRPC 流控相关的问题,该问题会导致 client 侧出现持续超时 CI 增加场景测试 Chore 更新了 ROADMAP
Wednesday, December 22, 2021 in Kitex
Hotfix 修复 v0.1.0 gRPC 请求优化引入的部分问题 修复 IDL 中未定义 package 时,gRPC 的方法信息错误问题 依赖更新 更新 netpoll-http2 依赖,解决 streaming 场景下大包(>4K)请求报错的问题 杂项 使用 GitHub 的 PR 模板,强制开发者提交 PR 时填写相关描述
Monday, December 13, 2021 in Kitex
功能 泛化调用 IDL 解析支持多 Service 暴露 SetSeqID 方法便于二进制泛化场景 server 侧使用 泛化 client 支持关闭,规避内存泄漏问题 日志 修改日志风格,使用 “key=value” 列出信息 使用 klog 作为全局的日志输出工具 使用全局的 default logger 日志打印更多 context 信息,例如 logId,方便问题排查 go func 传入服务信息用于 recover panic …
Friday, November 05, 2021 in Kitex
优化 使用分片 ring 减少连接池的锁开销。 装填 TTHeader 中的上游服务信息到 rpcinfo 中,用于在 decode 出错时输出来源信息。 Unlink uds 调整至 CreateListener 中。 event.go 和 ring_single.go 中的 Mutex 改为 RWMutex。 Bug 修复 修复 netpollmux shard index 溢出的问题。 移除 WithCircuitBreaker option 里对参数的反射,避免 data-race。 在 …
Sunday, September 26, 2021 in Kitex
功能: 增加默认的 ErrorHandler 封装 Error(用户指定会被覆盖)。 metainfo 支持反向传递。 支持了 JSON 泛化调用,使用指南可参考:Kitex 泛化调用使用指南。 优化: 多路复用场景下使用了新的 netpoll API 来改善吞吐和延迟。 多路复用场景下支持 metainfo 的正向和反向传递。 Client 会在需要的时候默认使用 RPCTimeout 中间件。 连接池配置增加全局空闲连接和单实例空闲连接合法性校验。 当更新 QPS 最大限制时会重置计数器。 …
Thursday, August 26, 2021 in Kitex
优化: transMetaHandler 在自定义 boundHandlers 之前执行,保证自定义 boundHandlers 可以拿到 RPCInfo 信息。 TransError 暴露封装 error 的 typeID 用于支持自定义 Error 回传错误码。 Bug 修复: 复用 RPCInfo 不对 stats level 重置, 以修复在使用 netpollmux 时 metric 丢失问题。 清理不存在节点的连接池。 Streaming 中增加 Netpoll EOF 错误判断来清 …
Friday, July 30, 2021 in Kitex
优化: Kitex 在没有 tracer 时关闭 stats 分阶段耗时采集,避免无 Trace 时额外的性能消耗。 Kitex client 默认使用连接池。 Bug 修复: 修复了一个 lbcache 中 nil-pointer 的错误。 修复了一个 retry 重试(Backup Request)中的 data race 问题。 工具: Kitex 工具去掉默认生成的配置文件。 Kitex 工具现在使用最新的 thriftgo API 以避免老版 API 在生成代码时的几个边角案例。 …