2
是否可以在一个节点(计算机)内运行多个deepstream.io服务器实例? 每个实例将监听不同的端口,存储在不同的存储器中,等等。 用例是指一个实例用于生产,其他用于分段 - 生产和分段使用不同的MongoDB数据库进行存储。一个节点内的多个deepstream.io服务器实例
是否可以在一个节点(计算机)内运行多个deepstream.io服务器实例? 每个实例将监听不同的端口,存储在不同的存储器中,等等。 用例是指一个实例用于生产,其他用于分段 - 生产和分段使用不同的MongoDB数据库进行存储。一个节点内的多个deepstream.io服务器实例
当然,确保在启动时将它们指向两个不同的配置文件。以下是它的工作原理AWS的Linux:
安装deepstream
sudo wget https://bintray.com/deepstreamio/rpm/rpm -O /etc/yum.repos.d/bintray-deepstreamio-rpm.repo
sudo yum install -y deepstream.io
复制许可文件和配置文件
cp /etc/deepstream/config.yml config-dev.yml
cp /etc/deepstream/config.yml config-prod.yml
cp /etc/deepstream/permissions.yml permissions.yml
变化的两个版本的端口(和其他任何你需要)在配置文件
然后开始b与
deepstream start -c config-dev.yml
deepstream start -c config-prod.yml
导致
为了更好地处理在同一台机器上运行多个deepstream进程OTH,我建议使用的工具,像PM2
其基于节点的,所以你可以在AWS上安装它
curl --silent --location https://rpm.nodesource.com/setup_6.x | sudo bash -
sudo yum -y install nodejs
sudo npm install -g pm2
现在可以如下
pm2 start --name ds-dev deepstream -- start -c ~/config-dev.yml
pm2 start --name ds-prod deepstream -- start -c ~/config-prod.yml
导致
PM2允许使用它们的ID,例如容易开始/结束/重启/监视单个进程中运行具有不同配置的多个进程pm2 stop 0
并跟踪您的日志,重新启动进程等...
如何停止特定实例?如果我运行“深度停止”,它会停止稍后启动的实例。 – mvladic
我已经添加了一个使用PM2的例子,应该解决这个问题 – wolframhempel