@yanglt7
2018-10-21T15:56:12.000000Z
字数 7056
阅读 979
Web集群实战
软件 | 版本 |
---|---|
Linux | CentOS 7.4.1708 64bit |
Nginx | 1.14.0 |
PHP | 7.1.22 |
MySQL | 5.5.61 |
[root@ylt001 ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
[root@ylt001 ~]# uname -r
3.10.0-693.el7.x86_64
[root@ylt001 ~]# uname -m
x86_64
[root@ylt001 ~]# /application/nginx/sbin/nginx -v
nginx version: nginx/1.14.0
[root@ylt001 ~]# /application/php/bin/php -v
PHP 7.1.22 (cli) (built: Sep 25 2018 06:46:29) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.1.22, Copyright (c) 1999-2018, by Zend Technologies
[root@ylt001 ~]# mysqladmin -uroot -p version
Enter password:
mysqladmin Ver 8.42 Distrib 5.5.61, for linux-glibc2.12 on x86_64
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Server version 5.5.61
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /tmp/mysql.sock
Uptime: 5 min 28 sec
Threads: 1 Questions: 4 Slow queries: 0 Opens: 33 Flush tables: 1 Open tables: 26 Queries per second avg: 0.012
[root@ylt001 ~]# /application/nginx/sbin/nginx
[root@ylt001 ~]# /application/nginx/sbin/nginx -t
[root@ylt001 ~]# /application/nginx/sbin/nginx -s reload
[root@ylt001 ~]# killall php-fpm
[root@ylt001 ~]# /application/php/sbin/php-fpm
[root@ylt001 ~]# ps -ef|grep php-fpm
[root@ylt001 ~]# /etc/init.d/mysqld start
[root@ylt001 ~]# /etc/init.d/mysqld restart
[root@ylt001 ~]# netstat -lntup|grep mysql
[root@ylt001 ~]# echo 'export LC_ALL=C'>> /etc/profile
# 设置环境变量,解决后面 Perl 程序插件的编译问题
[root@ylt001 ~]# tail -1 /etc/profile
export LC_ALL=C
[root@ylt001 ~]# source /etc/profile
[root@ylt001 ~]# echo $LC_ALL
C
[root@ylt001 ~]# yum install -y perl-devel
# 安装 Perl 相关软件依赖软件包
[root@ylt001 ~]# rpm -qa perl-devel
perl-devel-5.16.3-292.el7.x86_64
opcache.enable=1
zend_extension=opcache.so
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1
opcache.enable=1
[root@ylt001 php-memcached]# killall php-fpm
[root@ylt001 php-memcached]# /application/php/sbin/php-fpm
[root@ylt001 php-memcached]# ps -ef|grep php-fpm
[root@ylt001 ~]# yum -y install memcached
[root@ylt001 ~]# cat /etc/sysconfig/memcached
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS=""
[root@ylt001 ~]# firewall-cmd --zone=public --add-port=11211/tcp --permanent
[root@ylt001 ~]# systemctl enable memcached
[root@ylt001 ~]# systemctl restart memcached
[root@ylt001 ~]# /usr/bin/memcached -d -l 127.0.0.1 -p 11211 -m 150 -u root
# -d:守护进程。当从终端窗口退出的时候 memcached 还会继续运行
# -l:指定 ip 地址,这里我们指定本地 ip
# -p:指定端口号,端口号为 11211
# -m:分配内存,这里我分配了 150M 内存
# -u:使用哪个用户运行 memcached
[root@ylt001 ~]# ps -ef | grep memcached
memcach+ 2043 1 0 13:40 ? 00:00:00 /usr/bin/memcached -u memcache d -p 11211 -m 64 -c 1024
root 62328 62236 0 16:21 pts/0 00:00:00 grep --color=auto memcached
# ps 命令是 Precess Status 的缩写,也就是列出当前系统中运行那些进程
# ps -ef 就是显示所有进程,连同命令行
# ps 通常与 grep 组合使用,查找特定进程
[root@ylt001 tools]# wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
[root@ylt001 tools]# tar -zxvf libmemcached-1.0.18.tar.gz
[root@ylt001 tools]# mv libmemcached-1.0.18 /application/
[root@ylt001 tools]# cd /application/libmemcached-1.0.18
[root@ylt001 libmemcached-1.0.18]# ./configure --prefix=/application/libmemcached-1.0.18
[root@ylt001 libmemcached-1.0.18]# make && make install
[root@ylt001 libmemcached-1.0.18]# ln -s /application/libmemcached-1.0.18 /application/libmemcached
[root@ylt001 tools]# git clone https://github.com/php-memcached-dev/php-memcached
[root@ylt001 tools]# cd php-memcached/
[root@ylt001 php-memcached]# git checkout php7
Branch php7 set up to track remote branch php7 from origin.
Switched to a new branch 'php7'
[root@ylt001 php-memcached]# /application/php/bin/phpize
Configuring for:
PHP Api Version: 20160303
Zend Module Api No: 20160303
Zend Extension Api No: 320160303
[root@ylt001 php-memcached]# ./configure --with-php-config=/application/php/bin/php-config --with-libmemcached-dir=/application/libmemcached-1.0.18 --disable-memcached-sasl
[root@ylt001 php-memcached]# make && make install
[root@ylt001 php-memcached]# mv ../php-memcached /application/
extension=memcached.so
[root@ylt001 php-memcached]# killall php-fpm
[root@ylt001 php-memcached]# /application/php/sbin/php-fpm
[root@ylt001 php-memcached]# ps -ef|grep php-fpm
在编译安装时加上 --with-pdo-mysql=mysqlnd 参数即可。
重启 php 服务
[root@ylt001 php-memcached]# killall php-fpm
[root@ylt001 php-memcached]# /application/php/sbin/php-fpm
[root@ylt001 php-memcached]# ps -ef|grep php-fpm
[root@ylt001 tools]# wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-6.9.10-12.tar.gz
[root@ylt001 tools]# tar zxvf ImageMagick-6.9.10-12.tar.gz
[root@ylt001 tools]# mv ImageMagick-6.9.10-12 /application/
[root@ylt001 tools]# cd /application/ImageMagick-6.9.10-12
[root@ylt001 tools]# ./configure --prefix=/application/ImageMagick-6.9.10-12
[root@ylt001 tools]# make && make install
[root@ylt001 tools]# ln -s /application/ImageMagick-6.9.10-12 /application/ImageMagick
[root@ylt001 tools]# wget http://pecl.php.net/get/imagick-3.4.3.tgz
[root@ylt001 tools]# tar zxvf imagick-3.4.3.tgz
[root@ylt001 tools]# mv imagick-3.4.3 /application/
[root@ylt001 tools]# cd /application/imagick-3.4.3
[root@ylt001 imagick-3.4.3]# /application/php/bin/phpize
[root@ylt001 imagick-3.4.3]# ./configure --with-php-config=/application/php/bin/php-config --with-imagick=/application/ImageMagick
[root@ylt001 imagick-3.4.3]# make && make install
[root@ylt001 imagick-3.4.3]# ln -s /application/imagick-3.4.3 /application/imagick
extension=imagick.so
[root@ylt001 php-memcached]# killall php-fpm
[root@ylt001 php-memcached]# /application/php/sbin/php-fpm
[root@ylt001 php-memcached]# ps -ef|grep php-fpm
[root@ylt001 tools]# cd /application/php-7.1.22/lib/php/extensions/no-debug-non-zts-20160303/
[root@ylt001 no-debug-non-zts-20160303]# ll
total 6668
-rwxr-xr-x 1 root root 1185176 Sep 28 14:55 imagick.so
-rwxr-xr-x 1 root root 383312 Sep 28 14:16 memcached.so
-rwxr-xr-x 1 root root 205632 Sep 26 11:12 mysql.so
-rwxr-xr-x 1 root root 3406756 Sep 26 04:05 opcache.a
-rwxr-xr-x 1 root root 1636664 Sep 26 04:05 opcache.so
[root@ylt001 no-debug-non-zts-20160303]# cd /application/php/lib/
[root@ylt001 lib]# tail -5 php.ini
; Local Variables:
; tab-width: 4
extension=memcached.so
extension=imagick.so
; End:
[root@ylt001 lib]# grep opcache php.ini
[opcache]
opcache.enable=1
zend_extension=opcache.so
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1
opcache.enable=1