Chinaunix首页 | 论坛 | 博客
  • 博客访问: 157849
  • 博文数量: 42
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 377
  • 用 户 组: 普通用户
  • 注册时间: 2014-04-01 11:18
个人简介

虔诚运维

文章分类

全部博文(42)

文章存档

2014年(42)

我的朋友

分类: 系统运维

2014-07-23 18:01:26

post by rocdk890 / 2013-5-8 9:14 Wednesday linux技术
 nginx是一个非常出色的静态资源web服务器.如果你嫌它还不够快,可以把放在磁盘中的文件,映射到内存中,减少高并发下的磁盘IO.先 做几个假设.nginx.conf中所配置站点的路径是/home/wwwroot/res,站点所对应文件原始存储路径:/opt/web/res

shell脚本非常简单,思路就是拷贝资源文件到内存中,然后在把网站的静态文件链接指向到内存中即可.具体如下:

#! /bin/bash  
res_path="/opt/web/res"
mem_path="/dev/shm/res"
lk_path="/home/wwwroot/res"
 
if [ ! -d "$mem_path" ]; then
        cp -r "$res_path" "$mem_path"
fi
 
if [ ! -L "$lk_path" ]; then
        ln -s "$mem_path" "$lk_path"
fi
更新测试数据

利用上述方法,在公司的测试服务器上做了个测试,速度提升明显,速度几乎翻倍.

测试前提:将测试网站的首页全部内容包括html,图片,js,css等所有元素都拷贝到内存中,并且每次用户请求静态资源文件都不会缓存.使用LoadRunner按照200和100并发分别进行压力测试.

测试结果:

在高并发下全部使用磁盘文件200人并发 2分钟 平均每次事务响应时间为19.96秒 每秒处理事务数为9.26个
使用内存200人并发 2分钟 平均每次事务响应时间为11.3秒 每秒处理事务数为15.8个
在低并发下全部使用磁盘文件100人并发 2分钟 平均每次事务响应时间为10.27秒 每秒处理事务数为9.32个
使用内存100人并发 2分钟 平均每次事务响应时间为5.84秒 每秒处理事务数为16.17个

ps:上面这个脚本我个人觉得很合适小型企业网站来使用,或者是在同一台服务器上做了图床的站长来使用.

转自:http://blogread.cn/it/wap/article/5365
阅读(1188) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~