DDR爱好者之家 Design By 杰米

我觉得首先要选择一个合适的环境,对于大多数php站点来说,运行在lnmp(linux+nginx+mysql+php)环境下是个理想的选择.

首先一点linux对比win的优势我就不说了。

其次nginx的优势总结起来就是负载均衡,高并发性能优异。

这里php采用fastcgi的方式接入nginx,php5.3 自带的php-fpm已经很好了,相比于apache的php模块方式,这里由php自己直接处理php请求是比较好的,并且可调控进程数量以优化并发性能。

上面说的是基本环境,我有一台q6600的老四核,4G内存的linux服务器,上面跑了几十个站点,最高跑到90M带宽,成功hold住!

下面说说程序方面的优化。

我们知道,静态页面的速度比动态页面要快,尤其是在nginx下,静态页面直接由nginx提供服务,性能尤其高。而动态页面,虽然fastcgi也很好,但是相比于nginx直接处理静态页面,还是有点差距的。

这里介绍两个好东西,一个是nginx自身的缓存功能proxy_cache和fastcgi_cache,然后还有一个nginx模块ngx_cache_purge用于清理指定url的缓存。

这里单台服务器我们主要使用的是fastcgi_cache,可以指定的url下,将php脚本的执行结果缓存到磁盘和内存上,并可以指定过期时间,第二次访问的时候,由nginx直接取缓存文件,就相当于静态页面了,效率当然很高。

说完nginx再说说php,nginx用于缓存整个页面,而有的页面我们不需要缓存全部,只需要缓存一些短数据,比如一些数组,访问记录之类的临时新内容。传统的php是直接采用文件式缓存,就像dedecms里data/cache目录,里面存放的就是很多缓存文件,主要是用来避免频繁的数据库查询。一般情况下,文件缓存也够了,但是要追求极致,尤其是高并发下,不如试试memcached吧,很好的一个东西,作用是将一些字符串以键值对的形式存放到服务器内存中,指定过期时间,下次用的时候直接从内存中取,不消耗磁盘I/O,速度也不是一个级别的,原理和文件缓存一样。

暂时能想到的就是这么多,其实主旨就是一个:缓存。只是缓存的方式不同罢了。那么如何选择合适的缓存方式,就是我们开发人员需要考虑的事情了。

DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。