百独托管7500 紫田网络超高转化播放器收cps[推荐]速盾CDN 免实名免备防屏蔽阿里云 爆款特卖9.9元封顶提升alexa、IP流量7Q5团队
【腾讯云】中小企福利专场【腾讯云】多款产品1折起高防 随时退换 好耶数据小飞国外网赚带你月入万元炎黄网络4H4G10M 99每月
香港带宽CN2/美国站群优惠中客数据中心 服务器租用联盟系统移动广告平台 中易企业专场腾讯云服务器2.5折九九数据 工信部正规资质
腾讯云新用户大礼包代金券高价收cpa注册量高价展示【腾讯云】2核2G/9.93起租服务器找45互联 随时退换阿里云 短信服务 验证秒达

[Unix/Linux] 某大流量在线电影网站迁移到kangle案例【内附详细操作】 [复制链接]
查看:109667 | 回复:13

1602

主题

5085

帖子

8万

积分

落伍者(五谷丰登)

Rank: 8Rank: 8

贡献
733
鲜花
15
注册时间
2010-11-5

落伍PHP落伍手机绑定

发表于 2012-12-8 14:22:20 | 显示全部楼层 |阅读模式 来自 中国江西南昌
本帖最后由 weizy82 于 2012-12-8 14:24 编辑

1.背景介绍
       某大流量在线电影网站(为了隐私,这里隐去名字和域名),随着访问量的上涨,之前使用IIS,其cpu经常性的100%,长期90%以上。网站访问打开奇慢,严重影响用户体验,业务发展碰到瓶颈。

相关信息:
alexa世界排名,三个月平均48000. 连接信息30秒内高锋5000.
windows 2008操作系统。
cpu Xeon L5320 1.86 双cpu,每cpu4核心,总共8核心cpu
内存: 8G

2.强制缓存
该用户听朋友说kangle不错,购买一个kangle商业版(3.0.2)。测试性使用kangle,技术人员帮他做常规技术支持。做强制缓存,配置如下:

  1.         <response action='allow' >
  2.                 <table name='BEGIN'>
  3.                         <chain  action='continue' >
  4.                            <!--此规则是压缩网页-->
  5.                                 <acl_header header='content-type' regex='1'><![CDATA[text/ht*]]></acl_header>
  6.                                 <mark_response_flag   flagvalue='gzip,'></mark_response_flag>
  7.                         </chain>
  8.                         <chain  action='default' >
  9.                             <!--强制缓存 1800秒-->
  10.                                 <mark_cache_control   max_age='1800' static='1'></mark_cache_control>
  11.                         </chain>
  12.              </table>
  13.    </response>
复制代码
发现cpu无法降下来。
3.移除随机参数
经过我们的分析,进入kangle web控制平台http://ip:3311/,点连接信息,发现连接内有大量的如下的url:

  1. /plugins/rating/config.xml?0.8560413579778041(此为随机数)
  2. /public/js/looking.js?_=1354929049203(此为随机数)
复制代码
分析原因:其url中使用了随机数,严重影响缓存命中率。强制缓存基本无效。

换用kangle v3.1.4。
kangle 3.1中新增remove_param可以移除url中的一些参数。应对这种情况。
在请求控制(request)中的BEGIN表中增加一条规则链.如下配置:

  1. <request action='vhs'>
  2.              <table name='BEGIN'>
  3.                         <chain  action='continue'  name='移除随机,提高缓存命中'>
  4.                                 <mark_remove_param  params='((0\.)|(rand)|(_))' raw='0' nc='1'></mark_remove_param>
  5.                         </chain>
  6.             </table>
  7. </request>
复制代码
重起kangle后,cpu终于下来了。强制缓存有效。
4.优化搜索
经测试两天,用户满意,正式迁移到kangle后,发现cpu还是很高,90%以上。其中mysql占到90%以上。整站都无法打开。
点连接信息,发现有大量的如下类型连接:

  1. /?keyword=关键词
复制代码
与用户沟通,知道是其网站的搜索电影服务。经查用户的php代码,得知搜索是使用mysql的like算法,非常消耗资源。
我们建议,把搜索服务独立一个虚拟主机,使用一个单独的域名,这样我们对搜索的虚拟主机设置一个单独的工作者。
对独立的这个虚拟主机仅设置2个工作者。其cpu终于降下来,到10%左右。搜索也正常。
分析原因是搜索消耗cpu,就像堵车,谁都想走,结果谁都走不了。把它设置为最大工作数为2,搜索就会排队,效果反而更好。不堵了,效率更高。
5.缓存命中统计
使用kangle商业版的缓存命中统计,进web管理界面http://ip:3311/ 修改相应的虚拟主机,勾上流量统计模块。就会有缓存命中统计功能了。
主站缓存命中率在95%,搜索缓存命中率在91%。
cpu维持一个较低的水平(10%),用户非常满意,惊叹kangle的效果。

6.案例启示:
1.用好kangle的强制缓存,会收到奇效。
2.使用remove_param模块,移除一些随机参数,提高缓存命中率。
3.对于一些消耗资源的服务,可以独立一个虚拟主机,使用独立工作者,使其不影响到其它服务。
4.工作数不是越多越好,也不是越少越好,适合的才是最好。

评分

参与人数 1积分 +8 收起 理由
rhl88 + 8 感谢分享!向楼主学习。

查看全部评分

回复

使用道具 举报

13

主题

19

帖子

0

积分

落伍者(一心一意)

Rank: 1

贡献
27
鲜花
0
注册时间
2012-12-3

落伍手机绑定

发表于 2012-12-8 14:38:39 | 显示全部楼层 来自 中国江苏泰州
不错,非常好的学习贴。
来就业人才网靖江人才网zhenjiang.laijiuye.com
回复 支持 反对

使用道具 举报

1602

主题

5085

帖子

8万

积分

落伍者(五谷丰登)

Rank: 8Rank: 8

贡献
733
鲜花
15
注册时间
2010-11-5

落伍PHP落伍手机绑定

 楼主| 发表于 2012-12-8 14:39:16 | 显示全部楼层 来自 中国江西南昌
来就业 发表于 2012-12-8 14:38
不错,非常好的学习贴。

周末好!^_^

回复 支持 反对

使用道具 举报

36

主题

332

帖子

264

积分

落伍者(一心一意)

Rank: 1

贡献
133
鲜花
0
注册时间
2012-11-30
发表于 2012-12-11 10:16:53 | 显示全部楼层 来自 中国河南郑州
kangle 到底是什么啊?虚拟主机管理系统吗
回复 支持 反对

使用道具 举报

1602

主题

5085

帖子

8万

积分

落伍者(五谷丰登)

Rank: 8Rank: 8

贡献
733
鲜花
15
注册时间
2010-11-5

落伍PHP落伍手机绑定

 楼主| 发表于 2012-12-11 11:50:07 | 显示全部楼层 来自 中国江西南昌
xush133 发表于 2012-12-11 10:16
kangle 到底是什么啊?虚拟主机管理系统吗

kangle是一款web服务器和反向代理服务器软件。
回复 支持 反对

使用道具 举报

1602

主题

5085

帖子

8万

积分

落伍者(五谷丰登)

Rank: 8Rank: 8

贡献
733
鲜花
15
注册时间
2010-11-5

落伍PHP落伍手机绑定

 楼主| 发表于 2012-12-12 14:08:50 | 显示全部楼层 来自 中国江西南昌
xush133 发表于 2012-12-11 10:16
kangle 到底是什么啊?虚拟主机管理系统吗

您好^_^

有需要了解,欢迎随时信息
回复 支持 反对

使用道具 举报

11

主题

626

帖子

562

积分

落伍者(一心一意)

Rank: 1

贡献
94
鲜花
0
注册时间
2010-11-4

QQ绑定

发表于 2012-12-12 21:22:06 | 显示全部楼层 来自 中国陕西榆林
看 看
回复 支持 反对

使用道具 举报

1602

主题

5085

帖子

8万

积分

落伍者(五谷丰登)

Rank: 8Rank: 8

贡献
733
鲜花
15
注册时间
2010-11-5

落伍PHP落伍手机绑定

 楼主| 发表于 2012-12-13 10:10:32 | 显示全部楼层 来自 中国江西南昌
zxzx5656 发表于 2012-12-12 21:22
看 看

早上好^_^

欢迎来使用kangle !
回复 支持 反对

使用道具 举报

309

主题

535

帖子

469

积分

保护或锁定(状态异常,请联系客服)

贡献
913
鲜花
0
注册时间
2012-12-2

落伍手机绑定

发表于 2012-12-13 20:50:47 | 显示全部楼层 来自 中国北京
这个非常给力
回复 支持 反对

使用道具 举报

1602

主题

5085

帖子

8万

积分

落伍者(五谷丰登)

Rank: 8Rank: 8

贡献
733
鲜花
15
注册时间
2010-11-5

落伍PHP落伍手机绑定

 楼主| 发表于 2012-12-14 12:50:16 | 显示全部楼层 来自 中国广东广州
leyoutt 发表于 2012-12-13 20:50
这个非常给力

欢迎来使用kangle web服务器软件!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

论坛客服/商务合作/投诉举报:2171544 (QQ)
落伍者创建于2001/03/14,本站内容均为会员发表,并不代表落伍立场!
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论!
落伍官方微信:2030286 邮箱:(djfsys@gmail.com|tech@im286.com)
© 2001-2014

浙公网安备 33060302000191号

浙ICP备11034705号 BBS专项电子公告通信管[2010]226号

  落伍法律顾问: ITlaw-庄毅雄

手机版|找回帐号|不能发帖?|Archiver|落伍者

GMT+8, 2024-5-17 04:45 , Processed in 0.120050 second(s), 40 queries , Gzip On.

返回顶部