weekly icon indicating copy to clipboard operation
weekly copied to clipboard

【开源自荐】tproxy -- 简单易用的 TCP 连接(池)调试工具

Open kevwan opened this issue 1 year ago • 0 comments

项目地址: https://github.com/kevwan/tproxy

类别: Go

项目描述:

通过 tproxy 我们可以接受任意 TCP 请求,然后转发到我们实际的 TCP 服务上,借此我们可以详细分析连接的建连、断连情况,可以理解各种参数对连接或者连接池的影响,可以帮助我们理解各种协议(HTTP2, gRPC,Redis, MySQL)的工作原理。

推荐理由:

我们在做后端开发的时候经常会需要监控网络连接,分析请求内容。比如:

  • 分析 gRPC 连接何时连接、何时重连,分析 gRPC 的四种工作模式(unary, client streaming, server streaming, bi-directional streaming)
  • 分析 MySQL 连接池,当前多少连接,连接的生命周期是什么策略,帮助我们调整连接池参数
  • 也可以用来观察和分析任何 TCP 连接
  • 可以用来模拟网络延迟,比如加上 -d 100ms,模拟延迟100毫秒
  • 支持linux平台TCP重传率、RTT等的自动统计

截图如下:

  • gRPC 协议分析

image

  • MySQL 连接池参数调优

image

kevwan avatar Jul 10 '22 14:07 kevwan