我可以在 heroku 上使用相同的 Redis (to go) 实例来解决不同的问题吗?
我在 heroku 上并且有 Redis to go 附加组件,我用它来存储我的翻译,现在我也想将它用于 Resque 后台作业。
我可以使用同一个实例还是应该配置另一个实例?
I am on heroku and have the Redis to go add-on, I am using it for store my translations and now I want to use it for Resque background jobs as well.
Can I use the same instance or should I configure another one?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
虽然您可以将单个实例用于多种目的,但我通常建议设置一个单独的实例 - 资源使用与数据量比实例数量更相关,如果您以后需要为一个应用程序进行不同的设置,请拆分它们可能很重要。
还需要考虑安全性和故障排除 - 您可以限制应用程序访问特定端口,但没有任何较低级别的权限可用。
如果您使用的是按实例而不是使用量收费的定价过高的托管服务,那么选择可能会有所不同,但拥有额外的灵活性可能仍然值得。
Although you can use a single instance for multiple purposes, I'd generally recommend setting up a separate instance - resource usage is more related to the amount of data than the number of instances, and if you later need different settings for one app, splitting them can be non-trivial.
Security and troubleshooting also need to be considered - you can restrict an application to accessing a specific port, but there aren't any lower level permissions available.
The choice may be a little different if you are using an overpriced hosted service that charges by instance rather than usage, but having the additional flexibility is probably still worthwhile.
我无法具体谈论 Heroku 的 Redis 实现,但在大多数情况下,没有什么可以阻止您使用相同的数据库。事实上,Resque 假设您可能并使用 redis-namespace gem 作为其所有 redis 键。您也可以在自己的应用程序中使用 redis-namespace gem 将每种类型的缓存保留在不同的命名空间中。
I can't speak specifically to Heroku's implementation of Redis, but in most cases there's nothing preventing you from using the same database. In fact, Resque assumes you might and uses the the redis-namespace gem for all of its redis keys. You could use the redis-namespace gem in your own application as well to keep every type of cache in a different namespace.