新闻观点

一台服务器同时运营多个Redis的解决方法

2020/2/27 21:05:01   |   阅读次数:


一台服务器同时运营多个Redis的解决方法

最近部署人人商城,发现2套程序的redis服务功能是混乱的,A程序运行的数据和B程序运行的数据存在互相干扰问题,由于数据冲突问题,需要单独的redis,但是没有服务器安装redis了,于是考虑redis服务多开;经过查阅相关资料,笔者亲测找到如下2中解决方法:

方法1:redis存在0-15共16个库,在spring配置里,对不同项目配置不同数据库,代码如下:其中database在0-15里面随意选取一个,问题解决。这种方法简单但是不知道是否影响redis的运行效率。

具体的人人代码如下:

首先要去人你的人人环境切换为redis,请参考下面
$config['setting']['cache'] = 'redis';  // 默认是mysql,改为redis

然后选择redis的库,

// --------------------------  CONFIG REDIS  --------------------------- //
$config['setting']['redis']['server'] = '127.0.0.1';//如果redis服务器在别的机器,请填写机器的IP地址。
$config['setting']['redis']['port'] = 6379;
$config['setting']['redis']['pconnect'] = 1;
$config['setting']['redis']['timeout'] = 1;
$config['setting']['redis']['requirepass'] = '';


方法2:利用redis多开的原理

具体方法:单实例多应用一样,复制新的配置文件,改变配置名称,修改配置文件里面的端口号、PID文件路径以及日志文件路径、 转储文件路径,确保两个或者多个redis服务不会冲突;


默认Redis程序安装在/www/server/redis目录下;
配置文件:/www/server/redis/redis.conf,该配置文件中配置的端口为默认端口:6379;
可以指定端口启动多个Redis进程。

cd /www/server/redis/   #切换到redis安装路径下
cp  redis.conf redis6380.conf  #复制到新的配置文件供第二个redis使用
vim  redis6380.conf  #配置新redis文件,避免两个redis冲突,在配置文件找到以下几项,进行修改;

pidfile /var/run/redis/redis_6380.pid   #指定新的PID文件路径
port 6380    #指定新的端口号
logfile /var/log/redis/redis_6380.log   #指定新的日志文件路径
dbfilename dump_6380.rdb   #指定新的转储文件路径
#配置文件修改完成  保存退出

启动多实例命令及查看启动结果:
redis-server /www/server/redis/redis6380.conf  #启动新实例命令
netstat -lnpt        #通过端口查看服务器是否启动,结果如下:

tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN      1288/redis-server 1
tcp        0      0 127.0.0.1:6380          0.0.0.0:*               LISTEN      4084/redis-server 1


 

相关新闻
首页 | 关于我们 | 网站建设 | 网站优化 | 服务范围 | 案例作品 | 信息资讯 | sitemap