我们大多数的客户在他们的服务器上使用Apache作为Web服务器,尤其是部署在一个基于PHP系统的前端并且使用mod-PHP.鉴于扩张性和性能方面的原因,我们通常会建议他们改用Nginx和FPM. Apache是非常强大的Web服务器,模块化结构,也是Web服务端的鼻祖.除了捆绑一些其他的工具外,Apache已经成为了世上最广泛部署的开源系统,直到最近,世界上大多数网站仍运行着Apache系统. 但是,Apache并不是完美的,并且不再适合大规模系统.为什么?因为他的进程模式虽然简单而灵活,但并…
测试工具http_load相同的动态页面测试,相同的硬件资源,相同并发,相同请求数量的前提下,nginx+php比apache+php的性能要 差,而且如果请求的压力大于硬件资源的承受能力,nginx+php在有些请求中会返回502状态页,这意味着网站挂了(在用户看来), 但apache不会,只是打开网站的时间比较长(同样在用户开来) nginx+php的测试结果图: apache+php的测试结果图: 给nginx+php加上nginx自带的缓存功能 性能翻了4倍多,比apache+php的性…
编译安装的lnmp环境 总是出现502错误,修改了各种配置也没用,暂时先放弃nginx,改用apache apache使用yum安装方式 需要注意的事项,将网站根目录的用户组改为 chown apache.apache /home/www -R 由于之前安装的php是编译安装,配置文件php.ini并没有在/etc/php.ini下建立软连接(可能是这个原因),导致apache不能解析php文件.当时解决的办法是先将/etc/php.ini重命名,然后 yum install php 默认会在/…
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器.   1.apache的端口为8080,现有一内部服务主机,配置如下: <VirtualHost *:8080> DocumentRoot D:/wwwroot/site2 </VirtualHost> 内部是可以访问如下网址的. http:/…
转载于:http://www.toxingwang.com/linux-unix/linux-basic/1712.html 一.进程.线程? 在回答nginx 为什么比apache更高效之前,必须要先熟悉.了解下概念:什么是进程,什么是线程,什么是程序 ,程序的运行方式? 进程:是具有一定独立功能的,在计算机中已经运行的程序的实体.在早期系统中(如linux 2.4以前),进程是基本运作单位. 线程:在支持线程的系统中(如windows,linux2.6)中,线程才是基本的运作单位,而进程只是…
catalog . Apache工作模式 . Nginx工作模式 1. Apache工作模式 Apache服务器支持三种工作模式(Apache称之为MPM,简写为Multi-Processing Module,译为 多处理模块),分别为 . prefork模式 . worker模式 . event模式 //在旧的版本只支持profork和worker模式, 只有较新的版本才支持event模式 . WinNT MPM模式 不同的工作模式有不同的优缺点,会影响到Apache的性能和可伸缩性.查看Ap…
1.先从各自使用的多路复用IO模型说起:  select模型:(apache使用,由于受模块等限制,用的不多)   单个进程能够 监视的文件描述符的数量存在最大限制 select()所维护的 存储大量文件描述符的数据结构 ,随着文件描述符数量的增长,其在用户态和内核的地址空间的复制所引发的开销也会线性增长 由于网络响应时间的延迟使得大量TCP连接处于非活跃状态,但调用select()还是会对 所有的socket进行一次线性扫描 ,会造成一定的开销 poll: poll是unix沿用select自…
1. 安装Apahce, PHP, MySQL以及php连接mysql库的组件#yum -y install httpd php mysql mysql-server php-mysql     //这里"-y"参数表示静默安装,不会出现提示及交互 2. 安装apache扩展#yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql 3. 安装php的常用扩展#yum -y install php-gd php-xml ph…
一.进程.线程? 进程是具有一定独立功能的,在计算机中已经运行的程序的实体.在早期系统中(如linux 2.4以前),进程是基本运作单位,在支持线程的系统中(如windows,linux2.6)中,线程才是基本的运作单位,而进程只是线程的容器.程序 本身只是指令.数据及其组织形式的描述,进程才是程序(那些指令和数据)的真正运行实例.若干进程有可能与同一个程序相关系,且每个进程皆可以同步(循 序)或异步(平行)的方式独立运行.现代计算机系统可在同一段时间内以进程的形式将多个程序加载到存储器中,并借…
1.安装svn和httpd yum install httpd yum install subversion mod_dav_svn 创建仓库目录 mkdir -p /var/www/svn 3.创建svn仓库   svnadmin create /var/www/svn/project 4.配置改仓库的配置文件   vim /var/www/svn/project/conf/svnserve.conf 5.禁用匿名用户并开启验证用户权限.   anon-access = none auth-a…