我正在使用使用node_redis的kue,但我也已经在使用我的会话,所以我想在特定端口上创建一个服务器,比如默认值,然后在 port 上监听。node_redis
kue
6379
kue
1234
我怎么能做到这一点?我发现这篇文章谈到了类似的事情,但我真的不想创建一个初始化脚本来做到这一点。
我正在使用使用node_redis的kue,但我也已经在使用我的会话,所以我想在特定端口上创建一个服务器,比如默认值,然后在 port 上监听。node_redis
kue
6379
kue
1234
我怎么能做到这一点?我发现这篇文章谈到了类似的事情,但我真的不想创建一个初始化脚本来做到这一点。
启动 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 非常擅长处理写入,您可能只需要使用第二个数据库就可以了?
非常简单的命令:
echo "port 4000" | redis-server -
echo "port 4001" | redis-server -
您可以在一台机器上运行具有不同端口的多个 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
启动第二个redis
service redis2 start
check status
lsof -i:6379
lsof -i:6380
按照此操作,您可以启动两个 redis 服务器。如果您想要更多,请再次重复这些步骤。