服务器之家:专注于服务器技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - WEB服务器 - 单台web服务器如何尽可能的提高网站性能

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

2019-10-18 14:25hebedich WEB服务器

一个网站,对于个人或小公司来说,前期直接上集群的开销是比较大的,那么采用单台服务器如何才能尽可能的提高网站效率呢?

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

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

延伸 · 阅读

精彩推荐
  • WEB服务器如何将web项目部署到腾讯云服务器

    如何将web项目部署到腾讯云服务器

    如何将Web项目部署到腾讯 云服务器 摘要:本文将详细介绍如何将Web项目部署到 腾讯云服务器 。包括选择合适的云服务器实例,配置服务器环境,上传代码...

    未知1952023-06-24
  • WEB服务器阿里云服务器部署web项目查看

    阿里云服务器部署web项目查看

    阿里 云服务器 部署web项目查看 随着互联网的发展,越来越多的企业开始将自己的业务扩展到线上平台。为了满足用户的需求,企业需要部署自己的网站或...

    未知872023-09-07
  • WEB服务器云服务器安装多个web网站吗

    云服务器安装多个web网站吗

    云服务器 安装多个web网站 云服务器是一种基于云计算技术的 虚拟主机 服务,可以提供各种云计算基础设施和服务。作为一个虚拟主机,云服务器可以用于...

    未知1302023-07-12
  • WEB服务器湖北web云服务器价格

    湖北web云服务器价格

    湖北web 云服务器 价格 近年来,随着互联网技术的快速发展,云计算技术已经被广泛应用于各行各业,对于企业来说,云计算技术已经成为提升企业信息化...

    未知1612023-06-07
  • WEB服务器phpstudy默认不支持64位php的解决方法

    phpstudy默认不支持64位php的解决方法

    下面小编就为大家带来一篇phpstudy默认不支持64位php的解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 ...

    jingxian4702019-10-17
  • WEB服务器宝塔面板负载状态(load average)中的数据代表了什么?

    宝塔面板负载状态(load average)中的数据代表了什么?

    宝塔面板是现在众多站长选择的服务器管理软件,本文主要讲解宝塔面板负载状态(load average)中的数据代表了什么?有需要的朋友可以参考一下。...

    九天博客5792020-05-23
  • WEB服务器云端webdav服务器

    云端webdav服务器

    云端WebDAV服务器是一种在云端环境下提供WebDAV(Web Distributed Authoring and Versioning)协议服务的技术。WebDAV是一种HTTP扩展协议,它允许用户通过Internet访问分布...

    未知972023-05-25
  • WEB服务器WDCP控制面板升级mysql为5.7.11的方法

    WDCP控制面板升级mysql为5.7.11的方法

    本文主要讲解在WDCP控制面板升级mysql为5.7.11的方法,有需要的朋友可以参考下...

    yuanxiaoping5322020-07-15