我正在使用使用kue的node_redis,但我已经在我的会话中使用node_redis
了,所以我想{ {1}}在特定端口上创建服务器,例如默认kue
,然后6379
侦听端口kue
。
我怎么能这样做?我发现this article谈到类似的事情,但我真的不想创建一个init脚本来执行此操作。
答案 0 :(得分:18)
启动redis-server并为'port'提供一个不同的参数,可以在命令行上完成:
edd@max:~$ redis-server -h
Usage: ./redis-server [/path/to/redis.conf] [options]
./redis-server - (read config from stdin)
./redis-server -v or --version
./redis-server -h or --help
./redis-server --test-memory <megabytes>
Examples:
./redis-server (run the server with default conf)
./redis-server /etc/redis/6379.conf
./redis-server --port 7777
./redis-server --port 7777 --slaveof 127.0.0.1 8888
./redis-server /etc/myredis.conf --loglevel verbose
Sentinel mode:
./redis-server /etc/sentinel.conf --sentinel
edd@max:~$
您也可以从/etc/rc.local
执行此操作,以便在启动时发生这种情况。
但也许你也可以重新思考你的方法。 Redis是如此擅长处理你可能只是通过第二个数据库获得的写入?
答案 1 :(得分:2)
非常简单的命令:
echo "port 4000" | redis-server -
echo "port 4001" | redis-server -
答案 2 :(得分:0)
您可以在一台计算机上使用不同的端口运行多个Redis实例。这种关注是正确的,意味着您可以按照以下步骤操作。
通过安装第一个Redis实例,默认情况下,它在localhost:6379上侦听。
默认的redis实例使用/ var / lib / redis作为其工作目录,如果不手动更改转储的内存内容,则将其以dump.rdb的名称保存在该目录下。为避免运行时冲突,我们需要创建一个新的工作目录
mkdir -p /var/lib/redis2/
chown redis /var/lib/redis2/
chgrp redis /var/lib/redis2/
生成配置
通过复制/etc/redis.conf创建新的配置文件
cp /etc/redis.conf /etc/redis2.conf
chown redis /etc/redis2.conf
编辑以下设置以避免冲突
logfile "/var/log/redis/redis2.log"
dir "/var/lib/redis2"
pidfile "/var/run/redis/redis2.pid"
port 6380
创建服务文件
cp /usr/lib/systemd/system/redis.service /usr/lib/systemd/system/redis2.service
修改“服务”部分下的设置
[Service]
ExecStart=/usr/bin/redis-server /etc/redis2.conf --daemonize no
ExecStop=/usr/bin/redis-shutdown redis2
设置为从启动开始
systemctl enable redis2
开始第二次重做
service redis2 start
check status
lsof -i:6379
lsof -i:6380
通过此操作,您可以启动两个Redis服务器。如果需要更多,请重复上述步骤。