libevent 访问量高(几百万)时候 出现200ok之后 会在发一个400错误 访问小的时候没有问题

papasst 2018-08-16 10:49:44


如题:程序基本最简单的就这个应答
int send_resp(struct evhttp_request *req, const char* resmsg,int _len)
{
struct evbuffer *buf;
buf = evbuffer_new();
evbuffer_add_printf(buf,"%s", resmsg);
evhttp_send_reply(req, HTTP_OK, "OK", buf);
evbuffer_free(buf);
return 0;
}

求大神指导。。。。
...全文
206 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
papasst 2018-09-05
  • 打赏
  • 举报
回复
经过研究发现,每次从memcached取数据时候会慢很多,把memcached内存加大,单独跑一台服务器。处理速度就上来了,仔细看这个报文其实每次都在FIN报文之后发送400报文的。因为其HTTP连接所以应该影响不大,event的对列应该是没满的,看堆栈有一部分线程还在等待状态。先接贴吧
shwill123 2018-08-29
  • 打赏
  • 举报
回复
估计是 event 队列已经满了
papasst 2018-08-16
  • 打赏
  • 举报
回复
自己顶一下吧,还有个问题表现就是高峰时间段处理速度会慢 ,有3-5s。

24,855

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧