文章目录
在本文,我们要讲解的是,如何使用redis,做mysql的缓存。
实际的生产环境当中,客户端对数据库的读操作都是直接找redis拿数据的如果redis缓存里面没有数据,那么就会去找mysql拿数据,并且给redis中缓存一份redis中的数据有两种情况不能使用:数据过期了或者mysql中的数据更新了用户读的时候访问redis,用户写的时候访问mysql。实际上读的需求量是很大的,redis刚好是把数据缓存在内存当中,响应速度也快,也可以降低我们后台mysql数据库的压力
实验背景:
server1 nginx php 172.25.2.10
server2 数据库redis 172.25.2.11
真机 msql(mariadb数据库) 172.25.2.250
关闭3台主机的防火墙和selinux
基础环境的搭建
1.将原来server1上的redis的进程都关闭。
2.配置nginx做webserver
2.编辑nginx的配置文件
开启nginx
在server1上安装php
在server1上编写测试页面:
使得用户访问数据的时候先去找redis模块拿数据,如果redis模块没有数据或者数据已经过期则用户就会去找mysql拿数据
2.在server2上安装redis
将原来做的主从的删除。
开启redis
3.在真机(250上安装mariadb)
首先清空环境
授权使得前端服务器可以调用后台的数据库
将测试数据导入数据库test中
mysql -pwestos1234 < test.php
在浏览器中访问(server1)时。发现此时客户端访问到了mysql数据库的信息
因为此时redis数据库里面还没有数据,因此第一次会去找mysql数据库拿数据
可以看到第二次刷新访问时是从redis中拿数据