2012-05-11 4 views
2

Недавно я достиг предела базы данных 5mb с помощью герою, из-за этого затраты резко возросли после этого момента, поэтому я хочу переместить базу данных в другое место.Перемещение общей базы данных Heroku

Я очень новичок в использовании VPS и настройке серверов с нуля, однако я сделал это недавно для другого приложения.

У меня есть несколько вопросов, связанных с этим:

  • Можно ли создать базу данных на VPS и указать мое приложение рельсы на Heroku, чтобы использовать эту базу данных?
  • Если да, то что бы database.yml действительно выглядело. Что будет примером localhost с базой данных, хранящейся вне приложения?

Это могут быть элементарные вопросы, но мои знания о серверах и программировании очень самообучаются, поэтому я допускаю, что могут быть огромные лазейки в вещах, которые я «должен» уже понять.

Примечание: Другие (более простые) предложения по перемещению моей базы данных приветствуются. Благодарю.

ответ

6

OK - для начала, да, вы можете разместить базу данных, внешнюю по отношению к Heroku, и указать ваш database.yml на этом сервере - это просто случай настройки имени хоста для указания на правильный адрес и присвоения ему правильных учетных данных ,

Однако, вы должны рассмотреть несколько вещей:

1) Latency - если вы не хостинг внутри EC2 Востоке задержки между Heroku и вашей БД заставит вас все виды проблем с производительностью.

2) Настройка сервера базы данных - непростая задача. Вам нужно подумать о том, насколько это безопасно, как оно работает, поддерживать его в актуальном состоянии, поддерживать его в резервном состоянии и беспокоиться о том, как он поднимается. С Heroku вам не нужно это делать, поскольку он полностью управляется.

Цена по разумной цене, вы знаете о the new low cost Postgres plans at Heroku? $ 15/mo доставит вам 20 ГБ (общий экземпляр), а $ 50/mp получит вам терабайт (выделенный экземпляр). Для меня это абсурдно дешево, поскольку я ценю свое время гораздо больше, и я знаю, сколько часов мне нужно будет инвестировать в создание собственного сервера, чтобы сэкономить, может быть, 10 долларов в месяц.

+0

Спасибо Нейл! Я только смотрел на посвященный, я не посещал общую страницу ценообразования через некоторое время. Вы абсолютно правы, учитывая время, это лучший вариант. – Dru

1

Было бы дешевле использовать Amazon RDS, который официально поддерживается Heroku и подается из одного и того же центра обработки данных (Amazon US-East). Если вы хотите использовать VPS, используйте экземпляр Amazon EC2 в US-East для максимальной производительности. This tutorial показывает, как это сделать с Django в деталях. Даже если вы не решите использовать EC2, обратитесь к этому учебнику, чтобы узнать, как правильно добавлять внешнюю информацию базы данных в ваше приложение Heroku, чтобы Heroku не пыталась перезаписать его.

Тем не менее, общая база данных Heroku чрезвычайно выгодна по цене - намного выше, чем у большинства VPS, и с гораздо меньшей настройкой и обслуживанием.

+0

+ 1 Я решил пойти с тем, что вы, ребята, предложили, увеличив общий размер db, но мне любопытно. Я видел, что герой поддерживает RDS вместо стандартных postgresql dbs. Знаете ли вы, поддерживают ли они существующие postgresql dbs в RDS mysql dbs? – Dru

+0

У Heroku нет никакой конкретной поддержки для перемещения ваших данных из одной службы БД в другую.Конечно, если вы успешно переместите его, тогда будет легко переключить активные БД в Хереку. –

Смежные вопросы