- 浏览: 267778 次
- 性别:
- 来自: 广州
-
文章分类
最新评论
-
sunfeizhi:
感谢博主
mysqlhotcopy 缺少DBI不能使用问题解决 -
wuxiaochun:
谢谢版主提供所有依赖包的下载地址。
Memcached Session Manager 共享tomcat session设置
上次根据张晏发表的文章和根据我管理的服务器实际情况写了一个一键搭建PHP+NGINX+MYSQL高性能服务器脚步,现在对该脚本加于说明,方便读者理解。
【转载请注明出处 开源爱好者:伍波露 20091123 http://wubolu.iteye.com/admin/blogs/523603】
实验环境:CentOS 5.4_64_bit
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers libxslt-devel
说明:安装所需的程序库。
编译安装PHP 5.2.10所需的支持库(FastCGI模式)
说明:每一个Web请求PHP都必须重新解析php.ini、重新载入全部dll扩展并重初始化全部数据结构。使用FastCGI,所有这些都只在进程启动时发生一次。一个额外的好处是,持续数据库连接(Persistent database connection)可以工作。
FastCGI 是一个可伸缩、高速的在web server和脚本语言间通迅的接口
cd /root/nginx
tar zxvf libiconv-1.13.tar.gz
cd libiconv-1.13/
./configure --prefix=/usr/local
make && make install
cd ../
#GNU的libiconv主要是解决多语言编码处理转换等应用问题。
cd /root/nginx
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8/
./configure
make && make install
/sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make && make install
cd ../
#libmcrypt是加密算法扩展库。支持DES, 3DES, RIJNDAEL, Twofish, IDEA, GOST, CAST-256, ARCFOUR, SERPENT, SAFER+等算法。
cd /root/nginx
tar zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./configure
make && make install
cd ../
#本函数库支援多种杂凑演算法,如最出名的MD5、SHA1或GOST,还有其它多种的杂凑演算法;还要编译mhash程式库,之后才能编译PHP程式,在编译PHP程式时,记得要加--with-mhash选项打开系统的mhash功能。
ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8
ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a
ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la
ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so
ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1
#/usr/lib作用:常用的动态链接库和软件包的配置文件。
cd /root/nginx
tar zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8/
/sbin/ldconfig
./configure
make && make install
cd ../
#mcrypt也是一个功能强大的加密算法扩展库。
tar zxvf libiconv-1.13.tar.gz
cd libiconv-1.13/
./configure --prefix=/usr/local
make && make install
cd ../
#GNU的libiconv主要是解决多语言编码处理转换等应用问题。
cd /root/nginx
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8/
./configure
make && make install
/sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make && make install
cd ../
#libmcrypt是加密算法扩展库。支持DES, 3DES, RIJNDAEL, Twofish, IDEA, GOST, CAST-256, ARCFOUR, SERPENT, SAFER+等算法。
cd /root/nginx
tar zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./configure
make && make install
cd ../
#本函数库支援多种杂凑演算法,如最出名的MD5、SHA1或GOST,还有其它多种的杂凑演算法;还要编译mhash程式库,之后才能编译PHP程式,在编译PHP程式时,记得要加--with-mhash选项打开系统的mhash功能。
ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8
ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a
ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la
ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so
ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1
#/usr/lib作用:常用的动态链接库和软件包的配置文件。
cd /root/nginx
tar zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8/
/sbin/ldconfig
./configure
make && make install
cd ../
#mcrypt也是一个功能强大的加密算法扩展库。
安装MySQL
/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql
tar zxvf mysql-5.4.0-beta.tar.gz
cd mysql-5.4.0-beta
CFLAGS="-O6 -mpentiumpro -fomit-frame-pointer" CXX=gcc CXXFLAGS="-O6 -mpentiumpro -fomit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti"
./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/var/ --with-server-suffix=-enterprise-gpl --without-debug --with-big-tables --with-extra-charsets=latin1,gb2312,big5,utf8,GBK --with-extra-charsets=all --with-pthread --enable-static --enable-thread-safe-client --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --enable-assembler --without-innodb --without-ndb-debug --without-isam --with-federated-storage-engine
make && make install
cp support-files/my-medium.cnf /usr/local/mysql/my.cnf
/usr/local/mysql/bin/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
/usr/sbin/useradd -g mysql mysql
tar zxvf mysql-5.4.0-beta.tar.gz
cd mysql-5.4.0-beta
CFLAGS="-O6 -mpentiumpro -fomit-frame-pointer" CXX=gcc CXXFLAGS="-O6 -mpentiumpro -fomit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti"
./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/var/ --with-server-suffix=-enterprise-gpl --without-debug --with-big-tables --with-extra-charsets=latin1,gb2312,big5,utf8,GBK --with-extra-charsets=all --with-pthread --enable-static --enable-thread-safe-client --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --enable-assembler --without-innodb --without-ndb-debug --without-isam --with-federated-storage-engine
make && make install
cp support-files/my-medium.cnf /usr/local/mysql/my.cnf
/usr/local/mysql/bin/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
PHP安装
cd /root/nginx
tar zxvf php-5.3.0.tar.gz
gzip -cd php-5.3.0-fpm-0.5.12-rc.diff.gz | patch -d php-5.3.0 -p1
cd php-5.3.0/
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip --enable-soap --without-pear --with-zlib --enable-pdo --with-pdo-mysql --with-mysql
#mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定。
make ZEND_EXTRA_LIBS='-liconv'
make install
cd ../
rm -f /usr/local/php/etc/php.ini
cp php.ini /usr/local/php/etc/php.ini
tar zxvf php-5.3.0.tar.gz
gzip -cd php-5.3.0-fpm-0.5.12-rc.diff.gz | patch -d php-5.3.0 -p1
cd php-5.3.0/
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip --enable-soap --without-pear --with-zlib --enable-pdo --with-pdo-mysql --with-mysql
#mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定。
make ZEND_EXTRA_LIBS='-liconv'
make install
cd ../
rm -f /usr/local/php/etc/php.ini
cp php.ini /usr/local/php/etc/php.ini
安装PHP扩展模块
cd /root/nginx
tar zxvf memcache-2.2.5.tgz
cd memcache-2.2.5/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
cd ../
说明:memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,最初为了加速 LiveJournal 访问速度而开发的,后来被很多大型的网站采用。目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。起初作者编写它可能是为了提高动态网页应用,为了减轻数据库检索的压力,来做的这个缓存系统。它的缓存是一种分布式的,也就是可以允许不同主机上的多个用户同时访问这个缓存系统, 这种方法不仅解决了共享内存只能是单机的弊端,同时也解决了数据库检索的压力,最大的优点是提高了访问获取数据的速度!基于memcache作者对分布式cache的理解和解决方案。 memcache完全可以用到其他地方 比如分布式数据库, 分布式计算等领域。
cd /root/nginx
tar xzvf libevent-1.4.11-stable.tar.gz
cd libevent-1.4.11-stable
./configure && make && make install
ln -s /usr/local/lib/libevent-1.4.so.2 /usr/lib
cd ../
说明:libevent是一个异步事件处理软件函式库,以BSD许可证释出。
libevent提供了一组应用程序编程接口(API),让程式设计师可以设定某些事件发生时所执行的函式,也就是说,libevent可以用来取代网络服务器所使用的循环检查架构
由于可以省去对网络的处理,且拥有不错的效能,有些软件使用libevent作为网络底层的函式库,如:memcached、Tor 。
cd /root/nginx
tar xzvf memcached-1.2.8.tar.gz
cd memcached-1.2.8
./configure --prefix=/usr/local/memcached --with-libevent=/usr/
make && make install
ln -s /usr/local/memcached/bin/memcached /etc/init.d/memcached
cd ../
说明:memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。
cd /root/nginx
tar jxvf eaccelerator-0.9.5.3.tar.bz2
cd eaccelerator-0.9.5.3/
/usr/local/php/bin/phpize
./configure --enable-eaccelerator=shared --with-php-config=/usr/local/php/bin/php-config
make && make install
cd ../
说明:eaccelerator是一个自由开放源码php加速器,优化和动态内容缓存,提高了性能php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。使您的PHP程序代码执效率能提高1-10倍。
cd /root/nginx
tar zxvf PDO_MYSQL-1.0.2.tgz
cd PDO_MYSQL-1.0.2/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql
make
make install
cd ../
cd /root/nginx
tar zxvf ImageMagick.tar.gz
cd ImageMagick-6.5.1-2/
./configure
make && make install
cd ../
cd /root/nginx
tar zxvf imagick-2.2.2.tgz
cd imagick-2.2.2/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
cd ../
tar zxvf memcache-2.2.5.tgz
cd memcache-2.2.5/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
cd ../
说明:memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,最初为了加速 LiveJournal 访问速度而开发的,后来被很多大型的网站采用。目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。起初作者编写它可能是为了提高动态网页应用,为了减轻数据库检索的压力,来做的这个缓存系统。它的缓存是一种分布式的,也就是可以允许不同主机上的多个用户同时访问这个缓存系统, 这种方法不仅解决了共享内存只能是单机的弊端,同时也解决了数据库检索的压力,最大的优点是提高了访问获取数据的速度!基于memcache作者对分布式cache的理解和解决方案。 memcache完全可以用到其他地方 比如分布式数据库, 分布式计算等领域。
cd /root/nginx
tar xzvf libevent-1.4.11-stable.tar.gz
cd libevent-1.4.11-stable
./configure && make && make install
ln -s /usr/local/lib/libevent-1.4.so.2 /usr/lib
cd ../
说明:libevent是一个异步事件处理软件函式库,以BSD许可证释出。
libevent提供了一组应用程序编程接口(API),让程式设计师可以设定某些事件发生时所执行的函式,也就是说,libevent可以用来取代网络服务器所使用的循环检查架构
由于可以省去对网络的处理,且拥有不错的效能,有些软件使用libevent作为网络底层的函式库,如:memcached、Tor 。
cd /root/nginx
tar xzvf memcached-1.2.8.tar.gz
cd memcached-1.2.8
./configure --prefix=/usr/local/memcached --with-libevent=/usr/
make && make install
ln -s /usr/local/memcached/bin/memcached /etc/init.d/memcached
cd ../
说明:memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。
cd /root/nginx
tar jxvf eaccelerator-0.9.5.3.tar.bz2
cd eaccelerator-0.9.5.3/
/usr/local/php/bin/phpize
./configure --enable-eaccelerator=shared --with-php-config=/usr/local/php/bin/php-config
make && make install
cd ../
说明:eaccelerator是一个自由开放源码php加速器,优化和动态内容缓存,提高了性能php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。使您的PHP程序代码执效率能提高1-10倍。
cd /root/nginx
tar zxvf PDO_MYSQL-1.0.2.tgz
cd PDO_MYSQL-1.0.2/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql
make
make install
cd ../
cd /root/nginx
tar zxvf ImageMagick.tar.gz
cd ImageMagick-6.5.1-2/
./configure
make && make install
cd ../
cd /root/nginx
tar zxvf imagick-2.2.2.tgz
cd imagick-2.2.2/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
cd ../
mkdir -p /usr/local/eaccelerator_cache
cp php.ini /usr/local/php/etc/php.ini
说明:就是把修改好的php.ini替换上去,修改内容:
/usr/local/webserver/php/etc/php.ini中的extension_dir = "./"
修改为extension_dir = "/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/"
并在此行后增加以下几行,然后保存:
extension = "memcache.so"
extension = "pdo_mysql.so"
extension = "imagick.so"
再修改输出缓存output_buffering = Off
修改为output_buffering = On
并在文件最后添加以下配置信息:
/usr/sbin/groupadd www
/usr/sbin/useradd -g www www
mkdir -p /usr/local/www/www
chmod +w /usr/local/www/www
chown -R www:www /usr/local/www/www
说明:创建虚拟主机目录。
rm -f /usr/local/php/etc/php-fpm.conf
rm -f /etc/sysctl.conf
cp php-fpm.conf /usr/local/php/etc/php-fpm.conf
说明:php-fpm是为PHP打的一个FastCGI管理补丁,可以平滑变更php.ini配置而无需重启php-cgi。
php-fpm.conf内容如下:(如果安装 Nginx + PHP 用于程序调试,将以下的<value name="display_errors">0</value>改为<value name="display_errors">1</value>,以便显示PHP错误信息,否则,Nginx 会报状态为500的空白错误页)
cp sysctl.conf /etc/
说明:sysctl.conf内容如下
/sbin/sysctl -p
说明:使配置马上生效。
/etc/init.d/memcached -d -m 512 -u root -l 127.0.0.1 -p 11211
说明:-d选项是启动一个守护进程,-m是分配给memcache使用的内存数量,单位是MB,-u是运行Memcache的用户,-l是监听的服务器IP地址,-p是设置Memcache监听的端口,最好是1024以上的端口,-c选项是最大运行的并发连接数,默认是1024,按照服务器的负载量来设定。
ulimit -SHn 51200
说明:软硬限制,同一时间最多可开启的文件数。
/usr/local/php/sbin/php-fpm start
说明:启动PHP。
cp php.ini /usr/local/php/etc/php.ini
说明:就是把修改好的php.ini替换上去,修改内容:
/usr/local/webserver/php/etc/php.ini中的extension_dir = "./"
修改为extension_dir = "/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/"
并在此行后增加以下几行,然后保存:
extension = "memcache.so"
extension = "pdo_mysql.so"
extension = "imagick.so"
再修改输出缓存output_buffering = Off
修改为output_buffering = On
并在文件最后添加以下配置信息:
[eaccelerator] zend_extension="/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so" eaccelerator.shm_size="64" eaccelerator.cache_dir="/usr/local/webserver/eaccelerator_cache" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.check_mtime="1" eaccelerator.debug="0" eaccelerator.filter="" eaccelerator.shm_max="0" eaccelerator.shm_ttl="3600" eaccelerator.shm_prune_period="3600" eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9" |
/usr/sbin/groupadd www
/usr/sbin/useradd -g www www
mkdir -p /usr/local/www/www
chmod +w /usr/local/www/www
chown -R www:www /usr/local/www/www
说明:创建虚拟主机目录。
rm -f /usr/local/php/etc/php-fpm.conf
rm -f /etc/sysctl.conf
cp php-fpm.conf /usr/local/php/etc/php-fpm.conf
说明:php-fpm是为PHP打的一个FastCGI管理补丁,可以平滑变更php.ini配置而无需重启php-cgi。
php-fpm.conf内容如下:(如果安装 Nginx + PHP 用于程序调试,将以下的<value name="display_errors">0</value>改为<value name="display_errors">1</value>,以便显示PHP错误信息,否则,Nginx 会报状态为500的空白错误页)
<?xml version="1.0" ?> <configuration> All relative paths in this config are relative to php's install prefix <section name="global_options"> Pid file <value name="pid_file">/usr/local/webserver/php/logs/php-fpm.pid</value> Error log file <value name="error_log">/usr/local/webserver/php/logs/php-fpm.log</value> Log level <value name="log_level">notice</value> When this amount of php processes exited with SIGSEGV or SIGBUS ... <value name="emergency_restart_threshold">10</value> ... in a less than this interval of time, a graceful restart will be initiated. Useful to work around accidental curruptions in accelerator's shared memory. <value name="emergency_restart_interval">1m</value> Time limit on waiting child's reaction on signals from master <value name="process_control_timeout">5s</value> Set to 'no' to debug fpm <value name="daemonize">yes</value> </section> <workers> <section name="pool"> Name of pool. Used in logs and stats. <value name="name">default</value> Address to accept fastcgi requests on. Valid syntax is 'ip.ad.re.ss:port' or just 'port' or '/path/to/unix/socket' <value name="listen_address">127.0.0.1:9000</value> <value name="listen_options"> Set listen(2) backlog <value name="backlog">-1</value> Set permissions for unix socket, if one used. In Linux read/write permissions must be set in order to allow connections from web server. Many BSD-derrived systems allow connections regardless of permissions. <value name="owner"></value> <value name="group"></value> <value name="mode">0666</value> </value> Additional php.ini defines, specific to this pool of workers. <value name="php_defines"> <value name="sendmail_path">/usr/sbin/sendmail -t -i</value> <value name="display_errors">1</value> </value> Unix user of processes <value name="user">www</value> Unix group of processes <value name="group">www</value> Process manager settings <value name="pm"> Sets style of controling worker process count. Valid values are 'static' and 'apache-like' <value name="style">static</value> Sets the limit on the number of simultaneous requests that will be served. Equivalent to Apache MaxClients directive. Equivalent to PHP_FCGI_CHILDREN environment in original php.fcgi Used with any pm_style. <value name="max_children">128</value> Settings group for 'apache-like' pm style <value name="apache_like"> Sets the number of server processes created on startup. Used only when 'apache-like' pm_style is selected <value name="StartServers">20</value> Sets the desired minimum number of idle server processes. Used only when 'apache-like' pm_style is selected <value name="MinSpareServers">5</value> Sets the desired maximum number of idle server processes. Used only when 'apache-like' pm_style is selected <value name="MaxSpareServers">35</value> </value> </value> The timeout (in seconds) for serving a single request after which the worker process will be terminated Should be used when 'max_execution_time' ini option does not stop script execution for some reason '0s' means 'off' <value name="request_terminate_timeout">0s</value> The timeout (in seconds) for serving of single request after which a php backtrace will be dumped to slow.log file '0s' means 'off' <value name="request_slowlog_timeout">0s</value> The log file for slow requests <value name="slowlog">logs/slow.log</value> Set open file desc rlimit <value name="rlimit_files">65535</value> Set max core size rlimit <value name="rlimit_core">0</value> Chroot to this directory at the start, absolute path <value name="chroot"></value> Chdir to this directory at the start, absolute path <value name="chdir"></value> Redirect workers' stdout and stderr into main error log. If not set, they will be redirected to /dev/null, according to FastCGI specs <value name="catch_workers_output">yes</value> How much requests each process should execute before respawn. Useful to work around memory leaks in 3rd party libraries. For endless request processing please specify 0 Equivalent to PHP_FCGI_MAX_REQUESTS <value name="max_requests">102400</value> Comma separated list of ipv4 addresses of FastCGI clients that allowed to connect. Equivalent to FCGI_WEB_SERVER_ADDRS environment in original php.fcgi (5.2.2+) Makes sense only with AF_INET listening socket. <value name="allowed_clients">127.0.0.1</value> Pass environment variables like LD_LIBRARY_PATH All $VARIABLEs are taken from current environment <value name="environment"> <value name="HOSTNAME">$HOSTNAME</value> <value name="PATH">/usr/local/bin:/usr/bin:/bin</value> <value name="TMP">/tmp</value> <value name="TMPDIR">/tmp</value> <value name="TEMP">/tmp</value> <value name="OSTYPE">$OSTYPE</value> <value name="MACHTYPE">$MACHTYPE</value> <value name="MALLOC_CHECK_">2</value> </value> </section> </workers> </configuration> |
cp sysctl.conf /etc/
说明:sysctl.conf内容如下
net.ipv4.tcp_max_syn_backlog = 65536 net.core.netdev_max_backlog = 32768 net.core.somaxconn = 32768 net.core.wmem_default = 8388608 net.core.rmem_default = 8388608 net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.ipv4.tcp_timestamps = 0 net.ipv4.tcp_synack_retries = 2 net.ipv4.tcp_syn_retries = 2 net.ipv4.tcp_tw_recycle = 1 #net.ipv4.tcp_tw_len = 1 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_mem = 94500000 915000000 927000000 net.ipv4.tcp_max_orphans = 3276800 #net.ipv4.tcp_fin_timeout = 30 #net.ipv4.tcp_keepalive_time = 120 net.ipv4.ip_local_port_range = 1024 65535 |
/sbin/sysctl -p
说明:使配置马上生效。
/etc/init.d/memcached -d -m 512 -u root -l 127.0.0.1 -p 11211
说明:-d选项是启动一个守护进程,-m是分配给memcache使用的内存数量,单位是MB,-u是运行Memcache的用户,-l是监听的服务器IP地址,-p是设置Memcache监听的端口,最好是1024以上的端口,-c选项是最大运行的并发连接数,默认是1024,按照服务器的负载量来设定。
ulimit -SHn 51200
说明:软硬限制,同一时间最多可开启的文件数。
/usr/local/php/sbin/php-fpm start
说明:启动PHP。
安装nginx
cd /root/nginx
tar zxvf pcre-7.8.tar.gz
cd pcre-7.8/
./configure
make && make install
cd ../
说明:安装nginx所需的pcre库。
cd /root/nginx
tar zxvf nginx-0.7.61.tar.gz
cd nginx-0.7.61/
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
cd ../
说明:安装nginx,参数说明待续。
rm -f /usr/local/nginx/conf/nginx.conf
rm -f /usr/local/nginx/conf/fcgi.conf
cp nginx.conf /usr/local/nginx/conf/nginx.conf
cp fcgi.conf /usr/local/nginx/conf/fcgi.conf
说明:更改配置文件,关于nginx的配置文件博客里有详细介绍。创建fcgi.conf文件,内容如下:
tar zxvf pcre-7.8.tar.gz
cd pcre-7.8/
./configure
make && make install
cd ../
说明:安装nginx所需的pcre库。
cd /root/nginx
tar zxvf nginx-0.7.61.tar.gz
cd nginx-0.7.61/
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
cd ../
说明:安装nginx,参数说明待续。
rm -f /usr/local/nginx/conf/nginx.conf
rm -f /usr/local/nginx/conf/fcgi.conf
cp nginx.conf /usr/local/nginx/conf/nginx.conf
cp fcgi.conf /usr/local/nginx/conf/fcgi.conf
说明:更改配置文件,关于nginx的配置文件博客里有详细介绍。创建fcgi.conf文件,内容如下:
fastcgi_param GATEWAY_INTERFACE CGI/1.1; fastcgi_param SERVER_SOFTWARE nginx; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param REQUEST_URI $request_uri; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param DOCUMENT_ROOT $document_root; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name; # PHP only, required if PHP was built with --enable-force-cgi-redirect fastcgi_param REDIRECT_STATUS 200; |
ulimit -SHn 51200
/usr/local/nginx/sbin/nginx
mkdir -p /home/sh
cp cut_nginx_log.sh /home/sh/cut_nginx_log.sh
cd /root/nginx
tar zxvf phpMyAdmin-3.2.0-all-languages.tar.gz
mv phpMyAdmin-3.2.0-all-languages /usr/local/www/www/mysql123
发表评论
-
Memcached Session Manager 共享tomcat session设置
2014-02-27 14:05 2484wget http://memcached-session- ... -
内存类型查看
2013-12-27 11:11 717查看内存的插槽数,已经使用多少插槽.每条内存多大,已使用内存多 ... -
域名记录类型
2013-12-27 11:10 837记录类型 用来设置子域名记录类型 A记录:地址记录,用来指定 ... -
Linux 日志管理
2013-10-16 11:04 1103Linux 有三个主要日志子系统: 连接时间日 ... -
公钥与私钥
2013-06-19 10:59 838公钥与私钥 I.开启SSH公钥认证 vim /e ... -
chmod 设置文件特殊权限
2013-03-19 17:04 2044linux中除了常见的读(r)、写(w)、执行(x)权限以外 ... -
JAVA 内存的那些事
2013-01-16 15:54 12778(转载)固然Java屏蔽了一下内存细节,但是有时候,了解一下 ... -
nice调整SSHD的启动优先级别
2012-03-01 09:51 1658转载自素食勤俭敬老孝 ... -
CentOS6 网络配置
2011-09-21 12:38 1759修改对应网卡的IP地址的配置文件# vi /etc/sy ... -
Tomcat 7 日志配置
2011-09-09 10:29 4173Tomcat 日志分为两类:1、访问日志,记录访问的时间、访 ... -
scp: command not found找不到scp命令
2011-08-30 17:33 4181今天装了CENTOS6 64bit,使用scp的时候提示scp ... -
samba 安装配置
2011-08-22 17:12 1297有了 samba,Linux 就可以像 window ... -
RPMForge安装
2011-08-19 14:54 7821RPMForge是CentOS系统下的软件仓库,拥有4000多 ... -
用户ID管理
2011-07-05 15:17 895最近发现 rsync 同步文件到别的服务器上文件权限会变 ... -
安装和配置phpMyAdmin 详解
2011-07-04 11:06 2395安装和配置phpMyAdmin 去p ... -
PHP SAFE MODE Restriction in effect 的问题
2011-06-25 10:45 2490当safe_mode设置为 on,PHP 将通过文件函数或其目 ... -
php下添加pdo_mysql扩展
2011-06-20 11:05 2603下载wget http://pecl.php.net/get/ ... -
session_start(): Failed to initialize storage module 解决办法
2011-06-14 18:36 1163查看 phpinfo 信息 session.save_ ... -
inotify
2011-06-07 10:00 623inotifywait 仅执行阻塞,等待 ino ... -
iptables 命令操作
2011-05-23 16:55 1523iptables是基于内核的防火墙,,iptables内置 ...
相关推荐
- **Nginx**: 轻量级高性能的 Web 服务器/反向代理服务器。推荐使用 Nginx 1.18。 - **MySQL**: 强大的关系型数据库管理系统。推荐使用 MySQL 8.0。 - **Redis**: 高性能的键值存储数据库,可用于缓存、队列等多种...
Nginx 是一个高性能的 HTTP 和反向代理服务器,同时还是一个 IMAP/POP3/SMTP 代理服务器。Nginx 由俄罗斯 Rambler.ru 站点开发,业界知名的网站如腾讯、网易、51CTO、迅雷、当当网、51、人人网等都已经使用 Nginx ...
LNMP(Linux+Nginx+MySQL+PHP)服务器环境配置是一项关键的技术,广泛应用于现代Web开发领域,尤其在构建高性能、高稳定性的网站时。这一组合利用Linux作为操作系统基础,Nginx作为Web服务器,MySQL作为数据库管理...
在构建高性能的Web服务器时,Linux、Nginx、MySQL和PHP(LNMP)的组合是一种常见的选择。这种架构能够提供高效、稳定且可扩展的服务,尤其适合处理高流量的PHP应用。以下是对标题和描述中涉及的知识点的详细解释: ...
### 构建Nginx+PHP(Fastcgi)+MySQL+Memcache高性能Web服务器 #### 一、概述 本文档旨在详细介绍如何构建一个基于Nginx、PHP(Fastcgi)、MySQL以及Memcache的高性能Web服务器架构(简称LEMP+Memcache)。此架构充分...
由于其出色的性能和低资源消耗,Nginx在中国的互联网行业中得到了广泛应用,如腾讯、网易等大型网站都将其作为Web服务器。学习并掌握Nginx的配置对于IT从业者来说至关重要。 ### 安装准备 在开始安装前,需要确保...
LNMP(Linux + Nginx + ...总结来说,LNMP环境是一个高效且灵活的Web服务解决方案,它将Linux的稳定、Nginx的高性能、PHP的易用性和MySQL的数据库功能完美融合,为开发者提供了强大的平台,以满足现代Web应用的需求。
这个"ubuntunginx+PHP+mysql服务器搭建.rar"文件很显然是一个教程或指南,旨在帮助用户在Ubuntu操作系统上配置一个功能完备的Web服务器环境。 首先,我们来详细了解一下这个过程: 1. **Ubuntu**:Ubuntu是一个...
### 基于CentOS 5.4搭建nginx+php+spawn-fcgi+mysql高性能PHP平台 #### 平台概述 在《基于CentOS 5.4搭建nginx+php+spawn-fcgi+mysql高性能php平台》这篇技术文章中,作者哈密瓜详细介绍了如何在CentOS 5.4上构建一...
在搭建Web服务器的过程中,组合Nginx、PHP和MySQL是常见的选择,这使得服务器能够处理动态内容并存储数据。在CentOS 7.2系统上安装Nginx 1.12、PHP 7.1和MySQL 5.6的步骤如下: 首先,为了获取额外的软件包,你需要...
这里我们详细探讨如何在Ubuntu系统上搭建基于Nginx的服务器,结合PHP和MySQL,形成一个强大的动态网站平台。 首先,安装Nginx,这是一个高性能的HTTP和反向代理服务器。在Ubuntu上,你可以通过运行以下命令来安装...
标题中的"套件php"指的是一个综合性的PHP开发和调试工具包,它包含了多项关键的服务器软件和技术,便于用户快速搭建和管理PHP运行环境。这个工具包特别适合PHP初学者,因为它提供了一键式安装和配置功能,简化了通常...
在Ubuntu上,可以使用`apt-get`命令来安装Nginx,它是一个高性能的HTTP和反向代理服务器。通过运行`sudo apt-get install nginx`,系统会自动下载并安装Nginx及其相关配置文件。安装完成后,Nginx的配置文件位于`/...
Nginx是一款高性能的HTTP和反向代理服务器,以其出色的并发处理能力、低内存消耗和稳定性而闻名。它的事件驱动模型和非阻塞I/O机制使其在高流量网站中表现优秀。 接下来是PHP,这是一种广泛使用的开放源代码脚本...
在IT行业中,构建LNMP(Linux + Nginx + MySQL + PHP)环境是常见的服务器配置方式,用于搭建高性能的Web应用程序。本教程由宋正河创作,主要针对CentOS 6.2操作系统,搭配Nginx 1.2.0、MySQL 5.5.3和PHP 5.4.3的...
Nginx是一款高性能的HTTP和反向代理服务器,以其轻量级的进程模型和优秀的并发处理能力而闻名。在Ubuntu上,通过运行以下命令即可安装Nginx: ```bash sudo apt-get install nginx ``` 安装完成后,Nginx的相关...
Nginx是一个高性能的HTTP和反向代理服务器,PHP是一种广泛使用的开源脚本语言,尤其适合于Web开发,而MySQL是世界上最流行的开源关系型数据库管理系统。 **Nginx介绍** Nginx以其事件驱动的架构和非阻塞I/O模型而...
在 Linux 平台下配置 Nginx 服务器和 PHP 环境是非常重要的,因为 Nginx 是一个高性能的 HTTP 和反向代理服务器,同时还是 IMAP/POP3/SMTP 代理服务器。下面我们将详细介绍如何在 Linux 平台下配置 Nginx 服务器和 ...
nginx是一款高性能的HTTP和反向代理服务器,它的特点是并发能力强,资源消耗低。在CentOS7上安装nginx: ```bash sudo yum install nginx sudo systemctl start nginx sudo systemctl enable nginx ``` 配置nginx...
Nginx是一款高性能的HTTP和反向代理服务器,它的特点是并发能力强、内存占用少。在安装过程中,需要注意配置参数的选择,比如启用或禁用某些模块,如http_memcached_module、http_fastcgi_module等。如果在编译时...