1、问题描述:高负载下,系统响应变慢,并出现超时或失误失败情况,TIME_WAIT积压 2、问题影响:系统设置的自动回收时间为60s,但在压测中如果涉及的服务较多的情况下,比如这次以100TPS压力单测1个接口,涉及4-6个服务,每秒就会创建400+的连接,1分钟就是2.4万的连接,系统无法及时回收,压测两分钟后,新的请求过来,无法创建连接或无法及...
    写了一个服务器程序,在Linux下测试.  但是服务器总是莫名退出,没有core文件.最后gdb确定问题为, 对一个对端已经关闭的socket调用send()将会生成SIGPIPE信号, 该信号默认结束进程.     具体的分析可以结合TCP的"四次...

PortMap for Linux

2015.05.08, C/C++ ,抢沙发,1464人打酱油
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #inclu...

socket设置超时

2015.05.04, C/C++ ,抢沙发,4947人打酱油
linux和windows下用setsockopt设置SO_SNDTIMEO,SO_RCVTIMEO的参数的一点区别   UDP的socket在某些情况:如对方关闭时,本地可能sendto不出去数据,然后recvfrom就会被阻塞,这时就需要设置 这两个参数的值提高程序质量。 linux:    ...

[转]Linux epoll事件模型

2015.03.25, Linux ,抢沙发,2150人打酱油
一、介绍     epoll是Linux(内核版本2.6及以上支持)下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率,因为它会复用文件描述符集合来传递结果而不用迫使开发者每次等待事件之前都必须重新准备要被侦听的文件描述符集合,另一点原因就是获取事件的...