Heroku负责多个数据库服务器?

时间:2010-08-20 20:44:11

标签: ruby-on-rails heroku

当我的用户群增长时,Heroku是否会为我的Rails应用程序设置多个数据库服务器,或者我必须以某种方式手动配置它?

换句话说,Heroku在需要时是否能很好地正确扩展(复制服务器)?

3 个答案:

答案 0 :(得分:9)

Heroku已在云中管理所有内容,并有三种扩展方式:dbdynosworkers。 Heroku不会为您扩展您的应用程序。您有责任调整控制cpu /数据库存储量的设置。我将概述Heroku如何在下面工作,但现在直接回答这个问题,说Heroku数据库有两种选择:共享,专用。专用机器在一台机器上保存信息,但机器相应增强,Heroku配音计算单元,而共享dbs共享数据库机器。

如果您正在阅读此答案而不了解Heroku,那么检查它们比阅读更重要。

首先让我说它是免费在Heroku上部署应用程序,除非你想要添加资源。使用您的git进行部署,例如:

  • heroku create
  • heroku push master
  • heroku rake db:migrate

当您想要更新您的应用时,有三件事:

  • git add。
  • git commit
  • git push heroku

这怎么可能。使用heroku gem

Heroku负责部署和扩展Ruby应用程序有点可怕,所以我也有这个问题并做了一些研究。事实证明,使用Heroku扩展应用程序时,您只需要知道三件事:

您所要做的就是增加你的dynos(基本上是瘦的进程)或者工作者(对于延迟的工作)来扩展你的应用程序。

基本上有三种销售应用程序的方法

  1. Choose a DB
  2. Choose how many dynos you want running
  3. Choose how many workers you want running
  4. Dynos和工人的运行时间约为每小时0.05美元

    然后您可以从5个数据库选项中进行选择。

    1. Blosom最多可免费使用5 Mb
    2. Koi每月15美元,最高20 Gb
    3. 然后,您的数据库有专门的服务器,其工作方式如下:

      1. Ronin - 200美元/月 - 1计算 - 最多2 TB数据库
      2. Fugu - 400美元/月 - 5个计算单位 - 最多2 TB数据库
      3. Zilla - 每月1600美元 - 20个计算单位 - 最多2 TB数据库
      4. 唯一专用于一台服务器的是您的数据库,您必须选择一个选项才能实现。云中的其他所有内容都分层到不同的服务器中,如下所示:

        1. HTTP Reverse prox y - 照顾DNS - 适用于Niginz
        2. HTTP Cache - 适用于 - Varnish
        3. Custom Routing Mesh - 适用于Erlang
        4. Dynos - 基本上很简单的程序
        5. PostgreSQLMemcached

答案 1 :(得分:2)

我认为这是Heroku的想法 - 他们为您处理所有管理和设置。您可以向应用程序添加资源以立即扩展。

答案 2 :(得分:2)

来自Heroku docs:

  

对于Rails应用程序,数据库连接   自动配置 - 您的应用程序   只是工作

他们的共享数据库计划Koi为15美元,提供20GB的空间。性能不应该是一个令人担心的问题,尽管它并不总是可预测的,因为其他用户的操作可能会对其产生影响。对于扩展,随着您的网站的增长以及您的数据库的增加,您可以轻松地升级到新计划或专用数据库服务器。只要确保随着流量的增长你的dynos缩放。