文章目录
1. redis(缓存)+mysql(数据库)+nginx(前端)架构
1.1架构介绍思路?
数据访问流程:client -> app -> redis -> mysql -> redis -> client
客户端用app访问,先在redis里读数据,redis没有才去mysql读,读完保存在redis里,然后返回客户端,下次再读就快;这种数据访问流程不但提高了访问速度,而且还减轻了数据库的读压力;我们知道客户的读需求远远大于写需求。这种访问流程大大提高了客户体验度
1.2架构实现
实验说明:
ip | server | 作用 |
---|---|---|
172.25.19.131 | srver1 | nginx+php(前端访问) |
172.25.19.132 | server2 | redis(做缓存,消息中间件) |
172.25.19.133 | server3 | mariadb (数据库) |
在server1:
(1)下载安装nginx
[root@redis1 ~]# yum install psmisc-22.20-11.el7.x86_64 -y ##下载killall命令软件
[root@redis1 ~]# killall redis-server ##关闭之前所有redis服务
[root@redis1 ~]# /etc/init.d/redis_6379 stop
/var/run/redis_6379.pid does not exist, process is not running
[root@redis1 ~]# tar zxf nginx-1.15.9.tar.gz
[root@redis1 ~]# ls
nginx-1.15.9 nginx-1.15.9.tar.gz redis
[root@redis1 ~]# cd nginx-1.15.9
[root@redis1 nginx-1.15.9]# ls
auto CHANGES.ru configure html man src
CHANGES conf contrib LICENSE README
[root@redis1 nginx-1.15.9]# vim auto/cc/gcc
171 # debug
172 #CFLAGS="$CFLAGS -g"
编译安装:
[root@redis1 nginx-1.15.9]# ./configure --prefix=/usr/local/nginx
[root@redis1 nginx-1.15.9]# yum install pcre-devel -y
[root@redis1 nginx-1.15.9]# yum install zlib-devel -y
[root@redis1 nginx-1.15.9]# ./configure --prefix=/usr/local/nginx
[root@redis1 nginx-1.15.9]# make && make install
(2)修改nginx配置文件
[root@redis1 conf]# useradd -s /sbin/nologin nginx
[root@redis1 conf]# id nginx
uid=1000(nginx) gid=1000(nginx) groups=1000(nginx)
[root@redis1 conf]# vim nginx.conf
2 user nginx nginx; ##修改进程用户
43 location / {
44 root html;
45 index index.html index.htm index.php;
46 }
47
65 location ~ \.php$ { ##开启php模块
66 root html;
67 fastcgi_pass 127.0.0.1:9000; ##php、duankou
68 fastcgi_index index.php;
69 #fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
70 include fastcgi.conf;
71 }
[root@redis1 local]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/nginx ##链接
[root@redis1 local]# nginx
[root@redis1 local]# netstat -antulp ##查看端口是否开启
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 7495/nginx: master
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 963/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1290/master
tcp 0 0 172.25.19.131:22 172.25.19.250:60750 ESTABLISHED 2134/sshd: root@pts
tcp6 0