单台web服务器如何尽可能的提高网站性能

admin3年前服务器102

我觉得首先要选择一个合适的环境,对于大多数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,速度也不是一个级别的,原理和文件缓存一样。

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


免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

phpStudy学习之php探针

phpStudy 探针 在原先的phpinfo基础上做了一些变化。在开发过程中,我们常常需要服务器的各项配置,而“探针”就是就是用来探测配置的。在安装完phpStudy之后,在...

什么是分销主机,分销主机的应用范围和原理

分销主机,是指通过把一台主机的计算资源分配给多个用户使用,实现更高效的资源利用和降低成本的一种方式。其应用范围非常广泛,主要包括云计算、虚拟主机、网站空间托管等领域。在云计算中,分销主机可以被视为一种...

phpstudy搭建本地网站服务器

对于搭建本地服务,大家可能都不陌生。学习前端,搭建一个本地服务器用来测试代码还是很重要的,不仅可以避免使用Chrome浏览器时,出现不支持File协议的Ajax请求的大坑(Firefox是支持的),还...

php虚拟空间是什么,php虚拟空间的特点与用途

1.什么是php虚拟空间?php虚拟空间是指在共享的服务器上,将用户的网站按照域名或子目录进行区分,每个用户都拥有独立的空间和数据库等资源,实现相对独立的网站建设。相比于独立服务器,虚拟空间拥有更低的...

为什么选择广东服务器托管,广东服务器托管的优势

1.什么是广东服务器托管?广东服务器托管是指将服务器机器放在广东的数据中心进行存储和管理,由专业的运维人员负责维护、管理、优化服务器,保证服务器的稳定运行。2.广东服务器托管的优势稳定性高广东作为最信...

电信IP地址查询是什么,如何进行电信IP地址查询

1.电信IP地址查询电信IP地址查询是一种通过网络查询工具来获取IP地址信息的方法,主要是针对电信网络中使用的IP地址进行查询。IP地址是在互联网中使用的一种全球性的网络地址,可以用来标识一个设备在网...