一款不错的网站压力测试工具webbench
[
|
2010/01/12 18:23]
|
2010/01/12 18:23]
webbench最多可以模拟3万个并发连接去测试网站的负载能力,个人感觉要比Apache自带的ab压力测试工具好,安装使用也特别方便。
1、适用系统:Linux
2、编译安装:
http://www.lubingit.com/Downing/webbench-1.5.tar.gz
tar zxvf webbench-1.5.tar.gz
cd webbench-1.5
make && make install
3、使用:
引用
webbench -c 500 -t 30 http://127.0.0.1/test.jpg
参数说明:-c表示并发数,-t表示时间(秒)
4、测试结果示例:
引用
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://127.0.0.1/test.jpg
500 clients, running 30 sec.
Speed=3230 pages/min, 11614212 bytes/sec.
Requests: 1615 susceed, 0 failed.
1、适用系统:Linux
2、编译安装:
http://www.lubingit.com/Downing/webbench-1.5.tar.gz
tar zxvf webbench-1.5.tar.gz
cd webbench-1.5
make && make install
3、使用:
引用
webbench -c 500 -t 30 http://127.0.0.1/test.jpg
参数说明:-c表示并发数,-t表示时间(秒)
4、测试结果示例:
引用
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://127.0.0.1/test.jpg
500 clients, running 30 sec.
Speed=3230 pages/min, 11614212 bytes/sec.
Requests: 1615 susceed, 0 failed.
用rsync实现网站镜像和备份
[
|
2010/01/12 16:38]
|
2010/01/12 16:38]
此文转载于http://blog.s135.com/post/259/
rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync。它的特性如下:
可以镜像保存整个目录树和文件系统。
可以很容易做到保持原来文件的权限、时间、软硬链接等等。
无须特殊权限即可安装。
优化的流程,文件传输效率高。
可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。
支持匿名传输,以方便进行网站镜象。
软件下载
rysnc的主页地址为:
http://rsync.samba.org/
目前最新版本为2.4.6。可以选择从原始网站下载:http://rsync.samba.org/ftp/rsync/。也可以选择从本站下载:rsync 2.4.6。
rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync。它的特性如下:
可以镜像保存整个目录树和文件系统。
可以很容易做到保持原来文件的权限、时间、软硬链接等等。
无须特殊权限即可安装。
优化的流程,文件传输效率高。
可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。
支持匿名传输,以方便进行网站镜象。
软件下载
rysnc的主页地址为:
http://rsync.samba.org/
目前最新版本为2.4.6。可以选择从原始网站下载:http://rsync.samba.org/ftp/rsync/。也可以选择从本站下载:rsync 2.4.6。
一个切割日志的脚本
[
|
2010/01/10 00:17]
|
2010/01/10 00:17]
由于nginx 可以用kill -HUP 来平滑nginx 重新创建日志 因此可以这么写:
#!/bin/bash
# This script run at 00:00
# The Nginx logs path
logs_path="/var/log/nginx/"
mkdir -p ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/
mv ${logs_path}bbslogs.log ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/bbslogs_$(date -d "yesterday" +"%Y%m%d").log
(只是一个bbslogs.log日志 如果目录下还有别的日志 可以在下面多写几行 注意黑体字的写法,不同的日志文件是不一样的)
kill -USR1 `cat /usr/local/nginx/nginx.pid` (最后平滑nginx 重新创建新日志文件)
如果不是nginx 像要切割mysql日志 因为mysql不能平滑重新创建新日志 所以需要修改
#!/bin/bash
# The MySQL logs path
logs_path="/var/log/mysql/"
mkdir -p ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/
mv ${logs_path}mysql1err.log ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/mysql1err_$(date -d "yesterday" +"%Y%m%d").log
touch ${logs_path}mysql1err.log
chown mysql:root ${logs_path}mysql1err.log
就是在后面加了个 touch 和chown
设置自定义工作 vim /etc/crontab
0 0 * * * root /bin/bash /usr/local/mysql/bin/cut_mysql_log.sh
保存就可以了 每天0点准时切割。
#!/bin/bash
# This script run at 00:00
# The Nginx logs path
logs_path="/var/log/nginx/"
mkdir -p ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/
mv ${logs_path}bbslogs.log ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/bbslogs_$(date -d "yesterday" +"%Y%m%d").log
(只是一个bbslogs.log日志 如果目录下还有别的日志 可以在下面多写几行 注意黑体字的写法,不同的日志文件是不一样的)
kill -USR1 `cat /usr/local/nginx/nginx.pid` (最后平滑nginx 重新创建新日志文件)
如果不是nginx 像要切割mysql日志 因为mysql不能平滑重新创建新日志 所以需要修改
#!/bin/bash
# The MySQL logs path
logs_path="/var/log/mysql/"
mkdir -p ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/
mv ${logs_path}mysql1err.log ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/mysql1err_$(date -d "yesterday" +"%Y%m%d").log
touch ${logs_path}mysql1err.log
chown mysql:root ${logs_path}mysql1err.log
就是在后面加了个 touch 和chown
设置自定义工作 vim /etc/crontab
0 0 * * * root /bin/bash /usr/local/mysql/bin/cut_mysql_log.sh
保存就可以了 每天0点准时切割。
一台服务器上配置多个mysql
[
|
2010/01/10 00:10]
|
2010/01/10 00:10]
1 先配置一个mysql数据库 并创一个可以关闭数据库的账号grant shutdown on *.* to multi_admin@'localhost' identified by '123456'; 装完第一个就创建 在第三步时 账号也就cp 过去了。 安装第一个数据库参照以前写过的文档
2 stop mysql
3 cp 第一个数据库的目录 到第二个数据库 第三个数据库 第四个数据库 例如:第一个数据库文件放到/usr/loca/mysq/var cp -P var var1 第三个和第四个一样
2 stop mysql
3 cp 第一个数据库的目录 到第二个数据库 第三个数据库 第四个数据库 例如:第一个数据库文件放到/usr/loca/mysq/var cp -P var var1 第三个和第四个一样
wordpress 一个记录工作日志的好东东(经过修改优化过的)
[
|
2010/01/08 23:59]
|
2010/01/08 23:59]
一个记录天天工作日志的好东东 (wordpress)
下载地址:http://www.lubingit.com/Downing/wordpress.tar.gz
使用方法:
1 下载后 上传到服务器中,并修改其uid 和gid 其中database是数据库文件
2 修改wp-config.php文件 配置数据库参数
3 拷贝database 目录下的数据库文件到相应的数据库下,并修改其uid 和gid
4 需要修改 wp_options表中option_value字段 的 url地址 把原来的word2.www.net修改成现有的域名
下载地址:http://www.lubingit.com/Downing/wordpress.tar.gz
使用方法:
1 下载后 上传到服务器中,并修改其uid 和gid 其中database是数据库文件
2 修改wp-config.php文件 配置数据库参数
3 拷贝database 目录下的数据库文件到相应的数据库下,并修改其uid 和gid
4 需要修改 wp_options表中option_value字段 的 url地址 把原来的word2.www.net修改成现有的域名
修改Linux内核参数,减少TCP连接中的TIME-WAIT sockets
[
|
2009/12/25 17:55]
|
2009/12/25 17:55]
用netstat -nal 命令发现服务器中有大量状态为TIME-WAIT的TCP连接,于是用/sbin/sysctl -a查看了一下Linux的各项内核参数,修改其中的两项参数,以达到减少TCP连接中TIME-WAIT sockets的目的。
在 /etc/sysctl.conf 加上如下三行
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
说明:
net.ipv4.tcp_syncookies = 1 表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
net.ipv4.tcp_tw_reuse = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;
net.ipv4.tcp_tw_recycle = 1 表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。
再执行以下命令,让修改结果立即生效:
/sbin/sysctl -p
用以下语句看服务器的TCP状态:
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
在 /etc/sysctl.conf 加上如下三行
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
说明:
net.ipv4.tcp_syncookies = 1 表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
net.ipv4.tcp_tw_reuse = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;
net.ipv4.tcp_tw_recycle = 1 表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。
再执行以下命令,让修改结果立即生效:
/sbin/sysctl -p
用以下语句看服务器的TCP状态:
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
mysql 批量修改字段值的语句
[
|
2009/12/25 17:33]
|
2009/12/25 17:33]
update 表名 set 字段名= repalce (字段名,'aaaa','bbb');





姓名:传奇
