参考:https://www.bt.cn/bbs/thread-53410-1-1.html
微擎开启Redis缓存数据库实战 一、什么是缓存数据库?缓存数据库和传统的数据库有什么大的差别? 答:缓存数据库又叫noSQL,不仅仅是SQL,它是一种将数据放在内存中的数据库,数据存放类型是以Key:value(键值对)形式存放,简单高效;而传统的数据库,如Oracle、MySQL关系型数据库是将数据存放在硬盘中的数据库。 二、常见的缓存数据库简单对比: 1、Redis:主要特点支持的数据类型多,支持事务,可持久化,支持主从复制集群 2、Memcached/Memcache:Memcache支持数据类型比较单一,Memcached才支持多类型的数据类型 3、MongoDB:需要强大的运维,DBA支持
三、使用场景: 1、高并发的业务,对数据库频繁读 2、消息队列 3、订阅 4、业务一单上线,较长时间不会对此进行修改 5、预缓存,对以后业务可能出现爆炸式的增长,提前做好缓存 四、微擎开启Redis缓存 1、在软件商店-----运行环境中安装好Redis(目前最新版本是6.0.5) 2、在对应的微擎网站使用的php中安装好Redis扩展 ![](https://i-blog.csdnimg.cn/blog_migrate/5031f7200cd971535c9bfb88ab3cb4bd.png)
4、进入微擎网站根目录下:
进入 data目录下面,编辑config.php ![](https://i-blog.csdnimg.cn/blog_migrate/bf952eb8dc07808a627a471ab217fdef.png) ![](https://i-blog.csdnimg.cn/blog_migrate/7985605d9ab02b53b3a96fe94bcbc13a.png)
修改:第35行:将默认的mysql 改为redis,数据缓存改成redis
- $config['setting']['cache'] = 'redis';
复制代码
![](https://i-blog.csdnimg.cn/blog_migrate/d90328b74b957ef267eeca5fc66af5ec.png)
下面加入redis的相关php配置
- //redis配置
- $config['setting']['redis']['server'] = '127.0.0.1'; //默认本地,你也可以用云库地址(远程)
- $config['setting']['redis']['port'] = 6379; //默认端口
- $config['setting']['redis']['pconnect'] = 1;
- $config['setting']['redis']['auth'] = 'dapaoredis'; //redis密码, 默认为空
- $config['setting']['redis']['timeout'] = 1;
复制代码
![](https://i-blog.csdnimg.cn/blog_migrate/f0c929d2a67bb80a18541bd2ab2da0d8.png)
5、打开微擎查看redis相关是否配置成功 登录微擎---站点配置----性能优化 ![](https://i-blog.csdnimg.cn/blog_migrate/233862387c23184304ecd14ad095999f.png) 6、指定redis使用的数据库,方便多个站点使用redis(可选项) Redis默认情况下有0--15号数据库一共16个,如果是面板上默认的情况下只能一个php对应的网站使用redis(考虑到数据安全)那就有点可惜redis的优势了。下面是如何开启多个网站使用redis不同的数据库: 打开微擎网站根目录下的framework/function/cache.redis.func.php 在第33行下面新增一行配置:$redisobj->select(1);
- //设置指定数据库
- $redisobj->select(1);
复制代码
![](https://i-blog.csdnimg.cn/blog_migrate/66631d820bfef39524d752ee4b67368e.png)
验证: 打开redis可视化工具:下载地址:AnotherRedisDesktopManager 发行版 - Gitee.com ![](https://i-blog.csdnimg.cn/blog_migrate/981646208d0ed8935a4dda1a9b6c438a.png)
7、Redis的安全设置: ![](https://i-blog.csdnimg.cn/blog_migrate/72c1de49bef1d042ab3bfd61328c4e2f.png) |
|
|
|
|
![](https://i-blog.csdnimg.cn/blog_migrate/d2e4f85963494ab90554b9505615d809.png)
如果使用多库,PHP的Session配置中是否要加个指定库为好?
否则默认会在第一个库(0库)里。怕不怕串数据? |
|