Назад | Перейти на главную страницу

Предложения по хостингу игрового сервера для iPhone

Я работаю над приложением для iPhone, для которого требуется серверный компонент. Игра будет взаимодействовать с сервером с помощью JSON и, по сути, будет интерфейсом CRUD для бэкэнда базы данных.

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

У меня нет ограничений в отношении языка серверного компонента, если это не что-то непонятное.

Есть ли у кого-нибудь предложения по хостингу для этого типа использования?

Я смутно изучал EC2, Rackspace Cloud и Google App Engine, но я понятия не имею, чем отличаются цены или различия между ними.

Цена - самый важный аспект. Я бы отказался от инструментов мониторинга и необычных функций по более низкой цене. Кроме того, хостинг с оплатой по мере использования будет предпочтительнее решения с предоплатой.

Если у кого-то есть опыт настройки чего-то подобного, я хотел бы получить ваше мнение.

Это монстр вопроса. Откровенно говоря, ваш выбор «облачного» провайдера далеко не так интересен, как архитектура вашего приложения. Если вы не знакомы с механизмами кодирования большого масштабируемого приложения, я бы порекомендовал обратиться к одному из гораздо более ограничительных поставщиков, таких как Google App Engine (если вы хотите писать для одной из поддерживаемых GAE фреймворков - в основном Пифонические вещи, я полагаю) или Heroku если вы хотите писать в одном из фреймворков, которые они поддерживают (большинство из Ruby).

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

Большой обратная сторона для этих поставщиков заключается в том, что если вы хотите сделать что-то, что они не поддерживают, вы в значительной степени забиты. У них нет гибкости, чтобы предоставить вам, например, другую методологию хранения данных. Если бы вы оказались в таком сценарии, вам нужно было бы управлять своей собственной инфраструктурой, чтобы иметь возможность включать эти компоненты. Я бы заранее узнал об ограничениях выбранного вами провайдера и убедился, что спроектировал свое приложение так, чтобы избежать такой ситуации. Уход, если вам это нужно, потребует много времени и усилий от людей, которые действительно знать, что они делают (и стоят больших денег), чтобы добиться правильного результата.

Одно из преимуществ Heroku над GAE, на мой взгляд, заключается в том, что в GAE есть куча компонентов, предназначенных только для Google, которые вы просто не можете получить или использовать где-либо еще, в то время как Heroku использует все технологии OSS в тех битах, которые имеют значение, поэтому Переместить приложение Heroku в другое место относительно просто, тогда как, если вы привязаны к технологиям Google, вы совершенно облажались, если вам нужно переехать.