如何部署使用Redis的Meteor应用程序?

9
我最近发现了一个叫做redis-oplog的程序包,看起来非常不错。鉴于我没有任何Redis的经验,我搜索了一些内容并发现有人说Redis甚至比Mongo Oplog更好,因此我想在我的Meteor项目中尝试使用这个包。但在尝试之前,我有一些关于部署方面的问题:
  • 我需要为运行Redis专门准备单独的服务器吗?
  • 如果我负担不起为Redis准备单独的服务器,将Redis与Meteor应用程序运行在同一服务器上是否可以?
  • 如果我的Meteor应用程序有多个实例,Redis也是如此(不确定Redis是否可以/需要有多个实例?),我该如何使它们协同工作?
  • 如果我设法在生产环境下使用Redis,我需要对我的Mongo服务器进行哪些更改?因为此时不再使用Mongo Oplog。
2个回答

4
  • 是的,您需要为redis设置单独的实例,并且必须使用redis-sentinel建立容错系统,您可以在此处找到具有优缺点的不同配置和设置:https://redis.io/topics/sentinel
  • 如果您无法负担Redis服务器的费用,则可以在MongoDB实例的安装服务器上运行它,如果您有一个的话。最后的选择是在您的Meteor实例所在的位置运行它,根据可用数据,redis-oplog肯定比mongodb-oplog更有效率。
  • 上面给出了与redis架构相关的示例。连接到redis与连接到mongodb相同
  • Mongo更改取决于您对mongo的其他用途。

2

Ansible是一种非常好用的软件部署工具。我们对David Wittman开发的Redis Ansible角色有很好的经验,可以使用https://galaxy.ansible.com/DavidWittman/redis/来部署单个实例(用于开发,在一个箱子上与所有组件一起)或作为生产集群。Meteor也可以通过Galaxy的角色进行部署,但我没有使用过这些角色。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接