`

LAMP最小优化

    博客分类:
  • PHP
阅读更多

原文地址:http://www.blogkid.net/archives/2704.html

 

假如你在Linode入手了一个VPS,迅速地部署了Ubuntu,然后使用一大堆apt-get把LAMP服务都搭好了(这整个过程也就10分钟吧,可以更短)。此时可以算是“It works”,但还颇有一些地方需要调整。本文就在这种场景下,写一下此时可以做的最小优化,作用范围不仅限于Linode、Ubuntu,其他系统也可以参考。希望对一些朋友有帮助。

Linux

日志切分

如果没有日志切分,日志可能很快会把硬盘塞满,最后不得不手动清理。做日志切分推荐用logrotate,易于配置,一旦配置完成就会默默无闻地工作。

调整swapiness

swappiness用来控制使用系统swap的概率,ubuntu内核默认是60。建议修改为0,使系统尽可能使用物理内存而非swap。实际上,在上次Linode升级套餐后,我已经关掉了swap,系统运行得依然稳定。具体修改方法可以百度一下。

UPDATE: 经 @7id 提醒,swappiness参数更多的是降低磁盘io操作,对于内存不是特别小的情况,差别不大。详细请看下方留言。

Apache

启用压缩

启用压缩,可以减少传输的内容。对WebServer来说这几乎是必须的,但默认的Apache安装并未开启压缩。对于比较慢的连接,启用压缩会有更多好处。

调整MaxRequestsPerChild

MaxRequestsPerChild用于设置每个子进程在其生存期内允许伺服的最大请求数量。到达MaxRequestsPerChild的限制后,子进程将会结束。如果这个参数为0,Apache进程占用的内存会只增不减。一些使用Apache的VPS经常遇到iorate很高,可以尝试调整一下这个参数(ref)。

Mysql

关掉InnoDB

如果服务器用来放blog或是论坛,多数时候MyISAM就足够用了。此时可以把InnoDB关掉。my.cnf中的注释说:”You might want to disable InnoDB to shrink the mysqld process by circa 100MB.”。实测在VPS关掉Innodb时虽然没节约了100MB,但50M还是有的,内存珍贵,能省则省吧。

只需在my.cnf加入一行 skip-innodb 就可以把InnoDB的功能关掉。

PHP

开启输出缓冲

在使用mod_php时,如果不开Output Buffering,每一个输出都会使Apache向客户端发送数据,导致效率很低。使用fastcgi时,由于WebServer本身有buffer,影响并不大。但默认的apt-get安装,使用的就是mod _php,因此建议在php.ini里把Output Buffering打开。

以上只是一些最初级的调整,叫做“优化”都显得有点夸大。但在初期遇到问题时,调整这些地方往往可以很快见效。

除此之外,强烈建议用nginx换掉Apache。

分享到:
评论

相关推荐

    LAMP服务器性能优化技巧之Apache服务器优化

    Apache服务器是LAMP(Linux + Apache + MySQL + PHP)架构的核心组件,负责处理HTTP请求并执行PHP等动态脚本。在面对高流量和复杂应用时,...通过持续优化,可以确保LAMP服务器在处理高并发和复杂应用时保持高效稳定。

    LAMP系统性能调优优化Apache和PHP.pdf

    例如,配置文件中可以设置初始启动的进程数为50,最小空闲进程数为15,最大空闲进程数为30,同时处理的最大客户端连接数为225,每个进程处理的最多请求数为4000,以防止内存泄漏。 worker模型采用多进程多线程方式...

    lamp环境配置教程

    在这个过程中,建议进行最小化安装,并额外添加GCC编译工具和一个桌面环境。GCC是GNU Compiler Collection,对于编译源码安装软件包是必不可少的。 **二、LAMP环境搭建前的准备工作** 1. **获取软件包** 在配置...

    LAMP服务器性能优化技巧之Mysql优化

    MySQL优化是提升LAMP服务器性能的关键环节,因为MySQL作为数据库引擎,其效率直接影响着网站的响应速度和用户体验。以下是一些针对MySQL的优化策略: 1. **编译和安装优化**: - 选择合适的编译器,如Linux/Intel...

    centos5.4 LAMP平台搭建

    本教程介绍了如何在CentOS 5.4操作系统上搭建LAMP平台,着重强调了性能优化。 首先,搭建LAMP平台需要准备相应的软件环境。在本教程中,推荐的平台环境是CentOS 5.4的x86_64架构,配合nginx作为Web服务器、...

    LAMP系统性能调优(apache+php+mysql)参考.pdf

    【LAMP系统性能调优】是指针对Linux操作系统、Apache HTTP服务器、MySQL数据库和PHP脚本语言组成的开源Web应用平台进行优化的过程。这篇文章主要探讨了如何优化Apache和PHP以提升整个系统的性能。 Apache作为世界上...

    CentOS 6.5安装配置LAMP服务器(Apache+PHP5+MySQL)

    在安装 CentOS 6.5 时,推荐采用最小化安装方式,并确保安装 GCC 编译工具和基本的桌面环境。这样可以保持系统的精简性,并且方便后续进行各种定制化的安装操作。 #### 二、卸载已存在的 LAMP 组件 如果在安装操作...

    LAMP系统性能调优(apache+php+mysql).pdf

    StartServers定义了Apache启动时的初始工作进程数,MinSpareServers和MaxSpareServers确保了空闲进程的最小和最大数量,以快速响应新请求。MaxClients限制了同时服务的最大客户端连接数,防止资源耗尽。...

    LAMP安全全攻略(Linux)

    - **优化内核参数**:通过修改`/etc/sysctl.conf`文件,调整内核参数以增强系统的安全性。 27. **更改SSH端口** - **更改默认SSH端口**:将默认的SSH端口22更改为其他端口,降低被扫描的风险。 28. **/tmp/var/...

    centos6.5编译安装LAMP环境.doc

    【LAMP环境构建详解】 LAMP(Linux + Apache + MySQL + PHP)是互联网服务器上常见的软件堆栈,用于搭建动态网站或web...注意,根据实际需求,你可能还需要配置其他服务,如设置虚拟主机、调整内存限制、优化性能等。

    Lamp环境下设置绑定apache域名的方法分析

    这些参数可以根据服务器的硬件资源和负载情况调整,以优化性能和资源利用率。 完成上述配置后,记得重启Apache服务以使改动生效。在Linux中,这通常通过`apachectl restart` 或 `systemctl restart httpd` 命令实现...

    CentOS操作系统安装及LAMP搭建教程.docx

    #### 四、LAMP环境调试与优化 - **Apache性能调优**:调整Apache配置以提高处理速度和并发能力。 - **MySQL性能优化**:根据实际负载调整MySQL配置,提升查询效率。 - **PHP性能提升**:启用PHP缓存机制,如OPcache...

    microscope_lamp:Altium Designer的显微镜灯PCB文件

    3. **布局与布线**:在满足电路功能的同时,要优化元件布局,确保信号的完整性和干扰最小。然后进行布线,让线路尽可能短直,减少电磁干扰。 4. **规则检查**:使用Altium Designer的规则和约束系统检查设计,确保...

    MIMO检测算法与深度学习方法探讨.pdf

    传统检测算法包括最大似然(ML)检测算法、迫零(ZF)检测算法和线性最小均方误差(LMMSE)检测算法等。这些算法的复杂度随着用户数增加而增加,特别是在接收天线数不是充分多时,次优的ZF和LMMSE算法都会有显著的...

    wdOS-1.0安装教程

    它的优势在于预装了Web环境和管理工具,用户可以选择安装LAMP(Linux、Apache、MySQL、PHP)、LNMP(Linux、Nginx、MySQL、PHP)或LNAMP(Linux、Nginx、Apache、MySQL、PHP),并可在这些环境之间自由切换。...

    嵌入式服务器-appweb

    - 对硬件资源需求低,有利于系统的整体优化。 4. **开发灵活性**: - 高度模块化的设计,可以根据实际需求选择必要的功能组件。 - 提供运行时模块加载功能,无需重新编译即可扩展或修改功能。 - 支持多种编程...

    wdlinuxbase32iso安装教程.docx

    该系统提供了三种版本:LAMP(Linux + Apache + MySQL + PHP)+ Zend + eAccelerator、LNMP(Linux + Nginx + MySQL + PHP)+ Zend + eAccelerator,以及基础版,即不含 web 环境的最小化 Linux 系统。如果你需要...

    LINUX调优总结

    4. **调整TCP自适应缓冲区限制**:通过`net.ipv4.tcp_rmem`和`net.ipv4.tcp_wmem`设定最小、默认和最大缓冲区大小,以适应不同情况下的网络需求。 5. **增加本地端口范围**:修改`net.ipv4.ip_local_port_range`以...

    facebook 架构

    - **故障最小化**: 努力减少潜在的故障点。 #### 结论 Facebook的架构设计充分体现了对高性能、高扩展性和大规模数据处理的深刻理解。通过定制化改进开源技术、引入自研服务和工具,以及遵循简洁高效的设计原则,...

    Ubuntu服务器使用指南.docx

    Apache2的配置部分则指导用户如何搭建和优化Web服务器,满足不同Web服务需求。 数据库章节可能涉及MySQL或PostgreSQL等常用数据库系统的安装和管理,包括创建数据库、用户权限管理和性能调优等方面。 总的来说,...

Global site tag (gtag.js) - Google Analytics