Heroku vs EngineYard:哪一个更值钱?

fun*_*nky 56 web-hosting ruby-on-rails heroku cloud-hosting engineyard

我在谷歌看了这个,但在我致力于任何一项服务之前想要更多的意见.有没有人有过任何一种(或两种)服务的经验?任何一个都有任何优点或缺点吗?特别感兴趣的领域是:

  1. 安全
  2. 稳定性
  3. 可扩展性.
  4. 价钱

Mic*_*any 66

质朴,

我曾经在Engine Yard工作,所以让我向您提供有关我们的Engine Yard Cloud服务(在AWS上运行)的信息.我会让你自己研究其他选择.

  1. 安全性每个Engine Yard Cloud帐户都是其幕后的完整亚马逊帐户,这意味着您将获得专用于运行应用程序的完全硬件强制的虚拟机.因此,在人们的C Gems,Ruby,乘客,linux等中利用零日缓冲区溢出等攻击者只能访问一个帐户.数据路径中没有共享基础结构.我们会查看堆栈中所有元素的安全漏洞报告,并在重新部署时自动获得新补丁.您可以获得对实例的完全SSH访问权限,并在需要安装Solr或Sphinx等软件包或图像处理等时获得正常的服务器环境.

在我看来,硬件级虚拟机是亚马逊成功的基础之一,也是为什么在虚拟机成熟之前没有出现这种情况(但我有偏见,因为我曾经是VMware的人,并且实时看到这种情况发生) )

  1. 稳定性我们在Ruby/Rails组件中可以信任和不可信的方面拥有丰富的经验.目前在我们的"不部署"名单上有雪貂,剑圣和桅杆.否则,我们会继承AWS正常运行时间,因为我们在数据路径中没有共享基础架构.AWS的正常运行时间相当不错,但我还是不会尝试使用它来运行核电站.部署可靠性最近变得喜忧参半 - 亚马逊似乎在容量利用率方面更接近风,因此在某些情况下,容量添加请求将失败并且必须重新发布.

  2. 可扩展性.我们在Engine Yard云上运行了一些大型应用程序.Playmesh去年11月拥有1号iphone应用程序,并提高了处理能力.我们甚至对一个小型实例(4个mongrel)进行了基准测试,能够在恒定负载(非常简单的应用程序)下每月处理85M/Req.我们建议人们在更大的实例上运行,如果他们想要大量的磁盘i/o,亚马逊为更大的实例大小提供更好的i/o吞吐量.在任何情况下,添加或删除容量实际上只需单击一个按钮即可.

  3. 价格在一个月内运行一个小型实例(4个mongrel)全天候将在EY Cloud上花费79美元或每小时0.11美元(裸体亚马逊上的8.5美分).这包括数据库管理,但您需要为存储和带宽支付少量费用 - Engine Yard Cloud以AWS的成本传递.我们非常有信心,一旦您达到任何合理的流量,我们就成了杀手锏.

让我添加一些您可能想要考虑的其他标准......

  1. 支持 - >您可以免费获得社区/论坛支持,但我们还提供票务支持选项,高级支持选项可让您的应用程序全天候观看,我们会在您的应用程序出现故障时通知您,如果受到支持则会为您排除故障堆叠这是一个问题.

  2. 社区 - >有些人关心这一点,有些人不会,但Engine Yard赞助了2个全职Rails贡献者,一个三人JRuby团队和下一代Ruby VM,Rubinius.我们致力于帮助使Rails和Ruby成为开发Web应用程序的最佳平台.

  3. 自动化 - >你只需观看演示即可看到它的实际效果,但它很整洁.此外,我们还在使用命令行git部署进行测试,查看知识库以查看其运行情况.

  • 迈克尔,感谢您抽出时间撰写如此深入的回复.这非常有帮助.我目前正在Heroku上托管我的应用程序,因为它相对较小且可以免费托管在那里,但肯定会在未来为Engine Yard尝试更大的应用程序. (3认同)

Tob*_*ede 32

我假设你在谈论Engine Yard的EC2托管,而不是他们的全服务堆栈?

我正在和Heroku一起工作,并且喜欢它.在价格上,Heroku对我来说是明显的赢家.带宽成本由Heroku抽象,这是一个巨大的胜利.

在安全方面,它有点难以辨别 - 这是云的常见批评之一.您对这两种服务上运行的堆栈没有太多的了解.

Heroku投入了大量技术来监控和无缝管理应用程序实例.出现问题,实例被删除,新的实例开始出现.精彩的东西.

至于可扩展性,两者都支持亚马逊并利用EC2和EBS,因此在原始容量方面可能大致相同.

  • 这个答案完全缺乏对安永的了解是不负责任的.迈克尔在下面的回答减轻了,但是快速火灾事实不准确:1.在EY你*可以*看到整个堆栈,因为你有root权限.Heroku只是价格的明显赢家,只有在底端.3.价格和硬件的抽象使人们无法知道Heroku的利润是多少,在安永你可以确切知道他们的利润是多少.4.安永还可以监控应用实例,也可以自动启动新实例.可扩展性配置文件完全不同,因为架构不同. (8认同)
  • 最初的答案是从2010年开始.从那时起,情况发生了很大变化. (2认同)

Pau*_*hon 27

它们是完全不同的方法.

Heroku是一个ruby PaaS解决方案,类似于谷歌应用程序引擎.只要您的应用程序适合他们提供的生态系统,它允许您在没有系统管理技能的情况下扩展应用程序.

Engine Yard是一种更传统的服务,可让您使用盒子并为您提供工具,让您的生活更轻松.由于它不是抽象,它为您提供了更大的灵活性,但您也需要更高的系统管理技能.


Col*_*ams 7

这是一个相当陈旧的线程,反应相当陈旧,所以我认为更新的响应可能会帮助一些人.

对于一些相当大而复杂的Web服务,我有很多使用Heroku和Engine Yard的经验.我的公司使用Engine Yard运行Andromo App Maker for Android,我们使用Heroku运行AirBop Push Messaging Service for Android.每个平台都有自己独特的功能.

您的问题有点难以回答,因为您感兴趣的大多数标准并不是每个平台的差异化特征.无论如何,我会回答这些问题,但我也会谈到每个平台的一般理念以及我认为在您的决策中更有用的技术支持差异.

安全性,稳定性和可扩展性是一种洗涤方式.这两种服务都与任何Amazon EC2实例一样安全稳定.可扩展性实际上也是一样的.虽然Heroku限制你到几百个小(512k)实例(或者现在是'双'小),但是Engine Yard会让你使用额外的大量的CPU和内存,但在现实世界中,它几乎都是相同的.结束.使用Heroku,您可能需要生成一大堆廉价的小型服务器来处理您的负载,或者使用Engine Yard,您将使用一些更昂贵的大型服务器.对于Web请求,它可能并不重要.

价格是我可以解决的一个因素.首先,如果你只是在摆弄,Heroku是免费的.只是不要混淆这意味着你可以在他们的免费套餐上真正运行一个真正的网站.你不能.Engine Yard也为您提供免费的游戏时间,但让我们来谈谈现实世界的应用程序.Heroku平滑了定价,向您收取"dynos"(我提到的那些小型Web服务器)和PostgreSQL数据库计划.它们的价格包括存储,备份,带宽等,所以很容易只计算一些成本.Engine Yard将事情分开,您需要使用他们的计算器来确定会花费多少 - 但在您决定启动新的'实例'之前,它们都会为您呈现.

我发现Heroku的数据库计划非常昂贵(与他们使用EC2实例的成本相比).他们肯定在这里弥补了他们的利润.对于dynos而言看起来便宜的东西现在需要一个200美元到400美元/月的数据库(开始达到你可能看到的更合理的性能水平800美元以上).我也讨厌隐藏/掩盖数据库规范的方式 - 你需要通过转到亚马逊的实例大小数据并查看H​​eroku用于"缓存"的"内存"来推断这些功能.

Engine Yard的数据库就是您想要的任何服务器实例.他们使用与Web实例相同的EC2标记.这里没有欺骗.它更透明.

一个比另一个便宜吗?也许吧,但我不会让你的决定浑浊几美元.

最后,我喜欢Engine Yard的"裸机"控制.我们需要Andromo,因为我们正在动态生成和编译Android应用程序,并且有一些非常具体的要求.Engine Yard使我们能够完全控制每个服务器,Unix软件包,SSH等.另一方面,Herkou在您可以从硬件中抽象出应用程序并进入那些dynos思维的情况下非常有效.它们可以在几分钟内快速轻松地启动数十个.正如我所提到的,我们在Heroku的平台上运行AirBop并使用HireFire自动化我们的实例创建/销毁 - 这对我们非常有效,因为我们的负载变化很大且出乎意料.

另外需要考虑的是技术支持.根据我的经验,Heroku的免费/包含支持几乎没用,而Engine Yard非常好.安永过去常常收取基本支持费用,但已开始包含所有计划(加上他们有优先24/7选项可用).我发现他们真的知道他们在谈论什么.

希望这有帮助!


小智 5

我检查了Bitnami,Heroku和Engine Yard并对heroku和Engine Yard进行了一些严肃的测试,而Engine Yard是迄今为止的赢家.Heroku做了一些非常奇怪的事情,例如限制250 MB的进程,他们的回答是你必须管理自己的记忆.我看到heroku上的性能出现了严重的上升,似乎有时候进程会挂起而不会重启,因为多个web dynos正在运行(这不应该发生).如果他们不是这样的话,那么heroku会让进程进入睡眠状态.使用过,即使有多个dynos也有一个奇怪的启动问题.加上我无法访问heroku上的日志文件并弄清楚发生了什么的额外不便.已经将相同的代码部署到Engine Yard并观察它的尖叫而没有任何时髦的性能峰值,我不得不说Engine Yard是迄今为止获胜并且最容易部署到您进行系统设置之后.一旦你开始添加网络动态并且性能更好,特别是如果你切换到JRuby堆栈,Engine Yard上的成本实际上比heroku便宜.我尝试在Bitnami上设置一些东西,但是从我记忆中来看,它有点难以使用.我认为heroku是一个很好的解决方案,如果你不关心性能或可扩展性,只想部署一个简单的Web应用程序,它可能比Engine Yard更容易使用.