2013年3月21日
摘要: linux和windows下TIME_WAIT过多的解决办法如果使用了nginx代理,那么系统TIME_WAIT的数量会变得比较多,这是由于nginx代理使用了短链接的方式和后端交互的原因,使得 nginx和后端的ESTABLISHED变得很少而TIME_WAIT很多。这不但发生在安装nginx的代理服务器上,而且也会使后端的app服务器 上有大量的TIME_WAIT。查阅TIME_WAIT资料,发现这个状态很多也没什么大问题,但可能因为它占用了系统过多的端口,导致后续的请求无法获 取端口而造成障碍。虽然TIME_WAIT会造成一些问题,但是要完全枪毙掉它也是不正当的,虽然看起来这么做没什么错 阅读全文
posted @ 2013-03-21 12:05 smartch 阅读(915) 评论(0) 推荐(0) 编辑
摘要: TIME_WAIT状态的意义:客户端与服务器端建立TCP/IP连接后关闭SOCKET后,服务器端连接的端口状态为TIME_WAIT是不是所有执行主动关闭的socket都会进入TIME_WAIT状态呢?有没有什么情况使主动关闭的socket直接进入CLOSED状态呢?主动关闭的一方在发送最后一个 ack 后就会进入 TIME_WAIT 状态 停留2MSL(max segment lifetime)时间这个是TCP/IP必不可少的,也就是“解决”不了的。也就是TCP/IP设计者本来是这么设计的主要有两个原因1。防止上一次连接中的包,迷路后重新出现,影响新连接(经过2MSL,上一次连接中所有的重复包 阅读全文
posted @ 2013-03-21 12:02 smartch 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 来源《鸟哥的linux私房菜》ps:将某个时间点的程序运作情况撷取下来?[root@linux~]# ps aux[root@linux~]# ps -lA[root@linux~]# ps axjf参数:-A:所有的 process 均显示出来,与 -e 具有同样的效用;-a :不与 terminal 有关的所有 process ;-u :有效使用者 (effective user) 相关的 process ;x :通常与 a 这个参数一起使用,可列出较完整信息。输出格式规划:l :较长、较详细的将该 PID的的信息列出;j :工作的格式 (jobs format)-f :做一个更为完整的输 阅读全文
posted @ 2013-03-21 11:56 smartch 阅读(967) 评论(0) 推荐(0) 编辑
摘要: 在Linux下查看WEB服务器的负载情况,以前也说过,最简单有有效的方式就是查看Apache Server Status(如何开启Apache Server Status点这里),在没有开启Apache Server Status的情况下,或安装的是其他的Web Server,比如Nginx的时候,下面的命令就体现出作用了。ps -ef|grep httpd|wc -l命令#ps -ef|grep httpd|wc -l1388统计httpd进程数,连个请求会启动一个进程,使用于Apache服务器。表示Apache能够处理1388个并发请求,这个值Apache可根据负载情况自动调整,我这组服务 阅读全文
posted @ 2013-03-21 11:55 smartch 阅读(1852) 评论(0) 推荐(0) 编辑
摘要: atoi 和 itoa的实现2012-08-25 14:57 by CobbLiu, 167 阅读,0评论,收藏,编辑atoi 和 itoa是面试笔试经常要考到的题目,下面两份代码是用C语言实现的atoi和itoa:1, atoi原型: int atoi(const char *nptr);函数说明: 参数nptr字符串,如果第一个非空格字符不存在或者不是数字也不是正负号则返回零,否则开始做类型转换,之后检测到非数字(包括结束符 \0) 字符时停止转换,返回整型数。#include <stdio.h>#include <assert.h>static int atoi( 阅读全文
posted @ 2013-03-21 11:25 smartch 阅读(482) 评论(0) 推荐(0) 编辑