APACHE安装笔记

2016-01-29 14:14 4 1 收藏

APACHE安装笔记,APACHE安装笔记

【 tulaoshi.com - PHP 】

摘要:
WEB应用容量规划:根据硬件配置和WEB应用的特点进行WEB服务的规划及一些简单的估算公式; APACHE安装过程:apache的通用的简化安装选项,方便以后的应用的模块化配置;
修改 HARD_SERVER_LIMIT:
vi /path/to/apache_src/src/include/httpd.h
#define HARD_SERVER_LIMIT 2560
<===将原来的 HARD_SERVER_LIMIT 256 后面加个“0”
apache编译:
/path/to/apache_src/configure --prefix=/another_driver/apache --enable-shared=max --enable-module=most 可选应用模块/工具的安装:php resin mod_gzip mod_expire及各个模块之间的配合;
PHP安装:
/path/to/php_src/configure --with-apxs=/path/to/apache/bin/apxs --with-other-modules-you-need
mod_resin安装:
/path/to/resin/src/configure --with-apxs=/path/to/apache/bin/apxs 
Mod_gzip安装:
/path/to/apache/bin/apxs -i -a -c mod_gzip.c
工具:cronolog安装:http://www.cronolog.org 升级/维护:看看通用和模块化的安装过程如何简化了日常的升级/维护工作;
按照以上的方法,系统管理员和应用管理员的职责可以清楚的分开,互相独立。
系统安装:系统管理员的职责就是安装系统=安装好一台可以适应任何情况的APACHE,然后COLON,
应用安装:由应用管理员负责具体应用所需要的模块并设置HTTPD。
系统升级:系统管理员:升级系统/升级APACHE
应用升级:系统管理员:升级应用模块

 

具体的说明:

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/php/)WEB应用的容量规划

APACHE主要是一个内存消耗型的服务应用,我个人总结的经验公式:
apache_max_process_with_good_perfermance < (total_hardware_memory / apache_memory_per_process ) * 2
apache_max_process = apache_max_process_with_good_perfermance * 1.5

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/php/)

为什么会有一个apache_max_process_with_good_perfermance和apache_max_process呢?原因是在低负载下系统可以使用更多的内存用于文件系统的缓存,从而进一步提高单个请求的响应速度。在高负载下,系统的单个请求响应速度会慢不少,而超过apache_max_process,系统会因为开始使用硬盘做虚拟内存交换空间而导致系统崩溃。此外,同样的服务:2G内存的机器的apache_max_process一般只设置到1G内存的1.7倍,因为APACHE本身会因为管理更多的进程而产生性能下降。

例子1:
一个apache + mod_php的服务器:一个apache进程一般需要4M内存
因此在一个1G内存的机器上:apache_max_process_with_good_perfermance < (1g / 4m) * 2 = 500
apache_max_process = 500 * 1.5 = 750

所以规划你的应用让服务尽量跑在500个APACHE以下,并设置APACHE的软上限在800个。

例子2:
一个apache + mod_resin的服务器: 一个apache进程一般需要2M内存
在一个2G内存的机器上: apache_max_process_with_good_perfermance < (2g / 2m ) * 2 = 2000
因此:apache_max_process = 2000 * 1.5 = 3000

以上估算都是按小文件服务估算的(一个请求一般大小在20k以下)。对于文件下载类型站点,可能还会受其他因素:比如带宽等的影响。

APACHE安装过程

服务器个数的硬上限HARD_SERVER_LIMIT的修改:
在FREEBSD和LINUX等UNIX操作系统下APACHE缺省的最大进程数是256个,需要修改apache_1.3.xx/src/include/httpd.h
#ifndef HARD_SERVER_LIMIT
#ifdef WIN32
#define HARD_SERVER_LIMIT 1024
#elif defined(NETWARE)
#define HARD_SERVER_LIMIT 2048
#else
#define HARD_SERVER_LIMIT 2560  <===将原来的HARD_SERVER_LIMIT 256 后面加个“0”
#endif
#endif

解释:
APACHE缺省的最大用户数是256个:这个配置对于服务器内存还是256M左右的时代是一个非常好的缺省设置,但随着内存成本的急剧下降,现在大型站点的服务器内存配置一般比当时要高一个数量级不止。所以256个进程的硬限制对于一台1G内存的机器来说是太浪费了,而且APACHE的软上限max_client是受限于HARD_SERVER_LIMIT的,因此如果WEB服务器内存大于256M,都应该调高APACHE的HARD_SERVER_LIMIT。根据个人的经验:2560已经可以满足大部分小于2G内存的服务器的容量规划了(APACHE的软上限的规划请看后面)。[next]

APACHE的编译:通用的编译

来源:https://www.tulaoshi.com/n/20160129/1492824.html

延伸阅读
<?xml:namespace prefix="o" ns="urn:schemas-microsoft-com:office:office">   环境配置一向是一个比较烦的一件工作!本文的目的就是要轻松为你搞定安装和配置SERVLET和JSP的执行环境。 首先,到java.apache.org去下载一个tomcat3.1,tomcat3.2。笔者用的是tomcat3.1。下载的是一个ZIP文件。将它extr...
标签: PHP
  刚刚看到有人贴win下安装步骤 刚好今天公司网站的新服务器到手。花了一上午安装mysql+php+apache。 新版的老版的还是有些不同的。现在把步骤帖一下 安装步骤: 1.mysql 在如下页面下载mysql的for linux rpm包 http://www.mysql.com/downloads/down...3.52-1.i386.rpm http://www.mysql....
标签: Java JAVA基础
  一、版权声明 这份文件将遵循 GPL 方式发表。 二、软件取得 俗话说的好,工欲善其事,必先利其器;以下所列为本文中所提到软件取得的相关资源; 同时将以安装顺序来编排软件的次序。 I. Apache Web Server o http://www.apache.org/ o http://www.redhat.com/ o http://cle.linux.org.tw/ II. JDK o http://java.sun.co...
标签: PHP
Q:我使用RPM安装了PHP,但APACHE却不能处理PHP文件。为什么?   A:假设你使用RPM正确安装了PHP,那你必须反注或加入下面的几行到httpd.conf文件中: #Extra Modules AddModule mod_php.c AddModule mod_php3.c AddModule mod_perlc. #Extra Modules LoadModule php_module modules/mod_php.so LoadModule php3_m...
今天实践了一下GTK+2.6的安装,呵呵,主要是我想在LINUX下同时用QQ和MSN还有雅虎通聊天!可是就算你下载了GAIM的源码安装上了GAIM但是在安装OPENQ时总会出错说什么GTK版本不对呀!什么的,还有就是升级安装GIMP时也会出现类似的错误!真的很烦人!于是偿试安装新的GTK+,终于经过一天时间搞定了!感谢网友们发的有关GTK+安装方面的资源。我怕过...

经验教程

359

收藏

26
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部