Nginx均衡2台LAMP+Redis企业主从实战
1、LAMP组合(Linux、Apache、Mariadb|MySQL|PHP、Python|Perl)+Redis(内存缓存数据库|nosql数据库);
1) LAMP组合主要用于发布WEB页面,发布PHP动态页面+静态文件,PHP网站并发不高,单台服务器500并发/s;
2) 加入缓存服务器,优化LAMP架构,对PHP加速缓存:APC、XCACHE、zend、eacc、Redis、Memacached;
3) 提升LAMP网站的并发,保证用户访问,提高用户的体验度;
4) LAMP网站5秒必须打开,超过10秒,1000-200人-20人;
2、LAMP+Redis企业实战部署:
192.168.149.128 Nginx +mysql数据库;
192.168.149.129 LAP服务器;
192.168.149.130 LAP服务器;
192.168.149.131 Redis数据库服务器;
1)LAP服务器执行如下代码:
yum install httpd httpd-devel php php-devel php-mysql -y
create databasediscuz charset=utf8;
grant all ondiscuz.* to bbs@'192.168.149.%' identified by "1qaz@WSX";
只需在WEB服务器添加hosts:
(hosts文件类似DNS服务器,可以将域名解析到IP地址)
192.168.149.128 mysql.jf.com
将192.168.149.129 /var/www/html数据同步至130的/var/www/html;
rsync -aP --delete /var/www/html/ [email protected]:/var/www/html/ |
出现如图报错信息:
2)Nginx+Mysql服务器执行代码:
wgethttp://nginx.org/download/nginx-1.12.0.tar.gz
cd nginx-1.12.0
./configure --prefix=/usr/local/nginx/
make
make install
yum installmysqlmysql-server mysql-devel -y
3)Nginx如何均衡后端2台LAP服务器:
Nginx自带的Upstream模块,功能用来均衡后端WEB服务器、Tomcat、PHP服务器;
grep -vE "^$|#" nginx.conf
Nginx高性能,Nginx-LAMP,只用了转发、负载功能,官网5万并发访问静态页面;
Nginx实现动静分离:动态文件、静态文件分开处理,用户请求静态文件,Nginx直接返回;用户请求动态文件,Nginx将请求转发至后端WEB;
静态文件:与数据库不发生交互,静态文件,很少做修改,html、htm、css、js、png、jpg、jpeg、txt、xml;
动态文件:与数据库发生交互,动态文件,频繁修改、php、jsp、do、asp、aspx、cgi;
动静分离的配置
Redis是一种高级key-value数据库,它跟memcached类似,不过Redis的数据可以持久化,而且支持的数据类型很丰富,有字符串,链表,集合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。Redis也被看成是一个数据结构服务器。(持久化就是永久保存,保存硬盘上,不是持久化:内存存储)
nohup/usr/local/redis/bin/redis-server /etc/redis/redis.conf&