baidu / sofa-pbrpc

A light-weight RPC implement of google protobuf RPC framework.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

sofarpc作为客户端时发送数据几分钟后才到达服务端

jackerlu opened this issue · comments

您好,目前我这边遇到这样一个情况,就是sofarpc 客户端A同时连接了几个TCP服务器,当A像服务端发送数据时,有时候要过好几分钟数据才能到达对端,我抓包后发现,调用sofarpc异构服务发送数据时,实际上并没有真正触发TCP底层协议栈发送动作,所以我在想是不是我客户端这边因为不停的向服务端发送数据,所以sofarpc应用层做了一些缓存的设置,如果超过了这缓存就不触发TCP底层协议栈发送动作呢?这问题要怎样才能解决呢?

你的平台、系统版本是什么?
你测试时的压力是怎样的?(QPS、每个message数据大小等)

我们是买的亚马逊云服务器,ubuntu系统,sofarpc是去年11月份在github上面下载的,测试的压力具体没有统计,线上就是大概有五万台设备,有些设备出现了异常导致不停的向服务器登录,从而不停的调用sofa接口,作为TCP客户端向sofarpc服务端发送数据。可以在线通过网页或者一些http接口可以验证本地sofa发送端缓冲区满了吗?或者出现了什么异常之类的

可以通过web端查看server的pending消息数和缓冲区大小,参见 https://github.com/baidu/sofa-pbrpc/wiki/%E9%AB%98%E7%BA%A7%E4%BD%BF%E7%94%A8 的最后一节。

你先看看?