Linux查看CPU信息、机器型号等硬件信息
[ 2010-12-12 21:34:31 | 作者: admin ]
原文出处:http://www.51testing.com/?uid-225738-action-viewspace-itemid-210333
测试机器的硬件信息:
查看CPU信息(型号)
# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
8 Intel(R) Xeon(R) CPU E5410 @ 2.33GHz
(看到有8个逻辑CPU, 也知道了CPU型号)
# cat /proc/cpuinfo | grep physical | uniq -c
4 physical id : 0
4 physical id : 1
(说明实际上是两颗4核的CPU)
# getconf LONG_BIT
...
阅读全文…
测试机器的硬件信息:
查看CPU信息(型号)
# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
8 Intel(R) Xeon(R) CPU E5410 @ 2.33GHz
(看到有8个逻辑CPU, 也知道了CPU型号)
# cat /proc/cpuinfo | grep physical | uniq -c
4 physical id : 0
4 physical id : 1
(说明实际上是两颗4核的CPU)
# getconf LONG_BIT
...
阅读全文…
Nginx php-fpm fast-cgi 502 Bad Gateway错误处理思路与方法
[ 2010-12-12 21:18:21 | 作者: admin ]
Nginx 502 Bad Gateway的含义是请求的PHP-CGI已经执行,但是由于某种原因(一般是读取资源的问题)没有执行完毕而导致PHP-CGI进程终止,一般来说Nginx 502 Bad Gateway和php-fpm.conf的设置有关。
常见的原因可能是php-cgi进程数不够用、php执行时间长(mysql慢)、或者是php-cgi进程死掉,都会出现502错误。
1. 在安装好的环境中,运行一段时间出现502问题,一般是因为默认php-cgi进程是5个,可能因为phpcgi进程不够用而造成502,需要修改/usr/local/php/etc/php-fpm.conf 将其中的max_children值适当增加。
2. php执行超时,修改/usr/local/php/etc/php.ini 将max_execution_time 改为300
...
阅读全文…
常见的原因可能是php-cgi进程数不够用、php执行时间长(mysql慢)、或者是php-cgi进程死掉,都会出现502错误。
1. 在安装好的环境中,运行一段时间出现502问题,一般是因为默认php-cgi进程是5个,可能因为phpcgi进程不够用而造成502,需要修改/usr/local/php/etc/php-fpm.conf 将其中的max_children值适当增加。
2. php执行超时,修改/usr/local/php/etc/php.ini 将max_execution_time 改为300
...
阅读全文…
深究Nginx502 bad gateway, 504 Gateway Time-out
[ 2010-12-12 20:23:18 | 作者: admin ]
我的VPS是256M的内存,CPU是四核心的,所以更多的我会在乎内存。而在我调试服务器的时候通常会遇到Nginx502 bad gateway和504 Gateway Time-out的错误。分析nginx.conf我发现server和fastcgi的buffers过多,导致fastcgi请求的数量过大,php-fpm无法及时处理而出错。循此思路我们可以再总体buffers不变的情况下减少请求数量,具体的ningx.conf改动细节如下:
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 1 128k;# 4 32k
client_max_body_size 8m;
...
阅读全文…
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 1 128k;# 4 32k
client_max_body_size 8m;
...
阅读全文…
打开MySQL的慢查询记录
[ 2010-12-12 17:35:18 | 作者: admin ]
打开MySQL慢查询,记录下没有使用索引的查询
MySQL慢查询记录日志对于跟踪PHP+MySQL体系下的MySQL负载调优问题很有用处,比如安装了很多Discuz!插件的用户,这样可以大概排查出那些插件有代码问题。其实启用MySQL的慢查询日志很简单,只需要在MySQL的配置文件里添加log-slow-queries和long_query_time两个参数即可。
log-slow-queries 日志保存位置
long_query_time 记录慢查询的秒数
log-queries-not-using-indexes 表示记录没有使用索引的查询
今天有个朋友问我,就顺带记录上来。更多的MySQL优化信息可以查看这里:http://www.ccvita.com/category/mysql
Windows下开启MySQL慢查询
MySQL在Windows系统中的配置文件一般是是my.ini找到[mysqld]下面加上
...
阅读全文…
MySQL慢查询记录日志对于跟踪PHP+MySQL体系下的MySQL负载调优问题很有用处,比如安装了很多Discuz!插件的用户,这样可以大概排查出那些插件有代码问题。其实启用MySQL的慢查询日志很简单,只需要在MySQL的配置文件里添加log-slow-queries和long_query_time两个参数即可。
log-slow-queries 日志保存位置
long_query_time 记录慢查询的秒数
log-queries-not-using-indexes 表示记录没有使用索引的查询
今天有个朋友问我,就顺带记录上来。更多的MySQL优化信息可以查看这里:http://www.ccvita.com/category/mysql
Windows下开启MySQL慢查询
MySQL在Windows系统中的配置文件一般是是my.ini找到[mysqld]下面加上
...
阅读全文…
Socket TIME_WAIT 问题
netstat -n | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,"\t",state[key]}'
会得到类似下面的结果,具体数字会有所不同:
LAST_ACK 1
SYN_RECV 14
ESTABLISHED 79
FIN_WAIT1 28
FIN_WAIT2 3
CLOSING 5
TIME_WAIT 1669
状态:描述
CLOSED:无连接是活动的或正在进行
LISTEN:服务器在等待进入呼叫
SYN_RECV:一个连接请求已经到达,等待确认
SYN_SENT:应用已经开始,打开一个连接
ESTABLISHED:正常数据传输状态
FIN_WAIT1:应用说它已经完成
FIN_WAIT2:另一边已同意释放
ITMED_WAIT:等待所有分组死掉
...
阅读全文…
netstat -n | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,"\t",state[key]}'
会得到类似下面的结果,具体数字会有所不同:
LAST_ACK 1
SYN_RECV 14
ESTABLISHED 79
FIN_WAIT1 28
FIN_WAIT2 3
CLOSING 5
TIME_WAIT 1669
状态:描述
CLOSED:无连接是活动的或正在进行
LISTEN:服务器在等待进入呼叫
SYN_RECV:一个连接请求已经到达,等待确认
SYN_SENT:应用已经开始,打开一个连接
ESTABLISHED:正常数据传输状态
FIN_WAIT1:应用说它已经完成
FIN_WAIT2:另一边已同意释放
ITMED_WAIT:等待所有分组死掉
...
阅读全文…
网站排障分析常用的命令
[ 2010-12-11 20:29:25 | 作者: admin ]
整理一些常用分析网站的小命令方便大家排障,内容均来源于网络。
如果你是初学者关于AWK应用技巧请参照论坛的脚本编程版块,
如果你是老手,什么好的命令集或者必杀技欢迎跟贴,丰富此贴!
TXT版:http://docs.linuxtone.org/webapp/webscan.txt
系统连接状态篇:
1.查看TCP连接状态
netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn
netstat -n | awk '/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}' 或
netstat -n | awk '/^tcp/ {++state[$NF]}; END {for(key in state) print key,"\t",state[key]}'
netstat -n ...
阅读全文…
如果你是初学者关于AWK应用技巧请参照论坛的脚本编程版块,
如果你是老手,什么好的命令集或者必杀技欢迎跟贴,丰富此贴!
TXT版:http://docs.linuxtone.org/webapp/webscan.txt
系统连接状态篇:
1.查看TCP连接状态
netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn
netstat -n | awk '/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}' 或
netstat -n | awk '/^tcp/ {++state[$NF]}; END {for(key in state) print key,"\t",state[key]}'
netstat -n ...
阅读全文…
1.TCP连接的一方A发起终止请求,并更为FIN-WAIT-1状态。
2.另一方B接受请求,并向返回确认,并更为CLOSE_WAIT
3.当A接受到B返回的确认后,状态由FIN-WAIT-1变为FIN-WAIT-2
4.A进入FIN-WAIT-2的定时器,这个时间就是由net.ipv4.tcp_fin_timeout设置的
5.B会再次向A发送终止请求,并变更为LAST-ACT
6.A接受请求,并向B返回确认,变更为TIME-WAIT
7.B接受到A返回的确认后,关闭连接,变更为CLOSED
8.A进入TIME-WAIT的定时器,超时后,连接终止,变更为CLOSED
此时TCP连接正式关闭
2.另一方B接受请求,并向返回确认,并更为CLOSE_WAIT
3.当A接受到B返回的确认后,状态由FIN-WAIT-1变为FIN-WAIT-2
4.A进入FIN-WAIT-2的定时器,这个时间就是由net.ipv4.tcp_fin_timeout设置的
5.B会再次向A发送终止请求,并变更为LAST-ACT
6.A接受请求,并向B返回确认,变更为TIME-WAIT
7.B接受到A返回的确认后,关闭连接,变更为CLOSED
8.A进入TIME-WAIT的定时器,超时后,连接终止,变更为CLOSED
此时TCP连接正式关闭
ssh到服务器端乱码,vim显示乱码解决方案
[ 2010-12-11 20:13:02 | 作者: admin ]
解决思路:
1、首先要确定系统中文显示是否正常,修改LANG
linux终端tty1-tty6环境是不支持显示中文的,即使你修改LANG为gbk,你看到的还是乱码,除非安装有中文化接口软件
如果是windows主机,通过远程联机软件到服务器端,命令行界面是可以看到中文的,只需设置LANG正确
2、vim可以将字符配置到~/.vimrc文件中,运行vim的时候会先读取改文件配置,例如:加入
set fileencodings=utf-8,gbk,ucs-bom,cp936
encoding:encoding是Vim的内部使用编码,encoding的设置会影响Vim内部的Buffer、消息文字等。在Unix环境下,encoding的默认设置等于locale;Windows环境下会和当前代码页相同。在中文Windows环境下encoding的默认设置是cp936(GBK)。
...
阅读全文…
1、首先要确定系统中文显示是否正常,修改LANG
linux终端tty1-tty6环境是不支持显示中文的,即使你修改LANG为gbk,你看到的还是乱码,除非安装有中文化接口软件
如果是windows主机,通过远程联机软件到服务器端,命令行界面是可以看到中文的,只需设置LANG正确
2、vim可以将字符配置到~/.vimrc文件中,运行vim的时候会先读取改文件配置,例如:加入
set fileencodings=utf-8,gbk,ucs-bom,cp936
encoding:encoding是Vim的内部使用编码,encoding的设置会影响Vim内部的Buffer、消息文字等。在Unix环境下,encoding的默认设置等于locale;Windows环境下会和当前代码页相同。在中文Windows环境下encoding的默认设置是cp936(GBK)。
...
阅读全文…