Chr*_*ini 21 scalability heroku ruby-on-rails-3
使用Heroku,当需要时,一个AUTO如何在web dynos方面扩大规模?假设我们每2-3分钟就会吸引100名并发用户.如果我们的应用程序卡在5-6网络dynos上.我们搞砸了.
其次,我无法在24小时内监控流量,以确定是否需要向上或向下扩展.
到目前为止,我已经看过http://hirefireapp.com/和http://www.heroscale.com/ 有关这两个的任何建议吗?
Nei*_*ton 25
heroku本身不这样做的原因是它是一个非常复杂的问题需要解决.
例如,想象一下上面的场景,你突然开始看到一个队列形成并想要使dynos斜坡上升.你又开了十个.然而,这不是一个dyno问题,你的数据库运行缓慢,所以现在你有更多的dynos等待数据库,现在有更多的需求.
虽然那里有自动缩放产品,但我没有尝试过任何一种产品,并且完全相信目前只有一个人可以在缩放时做出正确的调用.你的旅费可能会改变.
我在过去发现,将资源设置为预期的使用级别(可能高于当前使用率)往往效果最好,排除大量流量涌入(例如黑客新闻等)
Mic*_*jen 25
我建立了HireFire并希望分享一些最新信息:
HireFire能够根据各种指标自动扩展您的网络和工作人员动态.我们目前支持以下指标来源/类型:
HireFire(响应时间)执行基本HTTP请求以测量响应时间.
HireFire(作业队列)允许您根据队列大小自动缩放工作人员动态.你将在你的终端设置一个非常简单的端点(我们有一个RubyGem,但它可以用任何语言很容易地用任何语言完成).我们会定期执行检查并相应地扩展您的工作人员dyno形成.
New Relic允许您与New Relic集成.它会定期获取最新的度量标准数据,例如平均响应时间,每分钟请求数和Apdex,以确定您的Web dyno形成.
Heroku Logplex是我们的最新成员.这种方法依赖于您的(和Heroku的)日志.您的日志将从Heroku的Logplex流式传输到HireFire的Logdrain,在那里它将被解析为度量数据.这允许您以比HireFire/ResponseTime更可靠的方式自动缩放Web dynos,因为它直接从Heroku的路由器抓取数据.此方法也不需要任何外部依赖项,例如New Relic.
如果您有任何疑问,请联系我们!
Jus*_*son 12
我在Rails社区的很多朋友都使用Rails Autoscale在Heroku上进行自动缩放.以下是它的工作原理:
Rails Autoscale提供了一个小型的Rack中间件,可捕获此时间并定期将其报告给Rails Autoscale服务.这类似于New Relic的工作尺寸的一小部分.
Heroku本身提供的自动缩放仅在其性能层(每个dyno每月250美元起)上可用.如果您正在使用业余爱好或标准计划,则需要找到第三方解决方案.
我喜欢Rails Autoscale的一件事是它根据请求排队自动上下调整你的应用程序.
这是一个很好的功能,特别是为了安心.如果你正在睡觉,并且得到了交通高峰,你就无法手动调整动态数量.拥有一个可以自动扩展的工具是很好的保险.
| 归档时间: |
|
| 查看次数: |
9867 次 |
| 最近记录: |