2014-02-14 2 views
0

Мне нужен сервер для хранения обновлений местоположения и сообщений, я думал об использовании JSON для подключения к серверу Amazon S3 и для извлечения и хранения данных.Бэкэнд для iOS

Сколько клиентов может быть подключено к этому серверу? Есть ли способ связать сервер MYSQL с Amazon S3 для учетных записей пользователей и пользователей?

+0

Я подозреваю, что вы имеете в виду ec2. S3 - это просто хранилище объектов. Он не выполняет код. – datasage

+0

@ datasage, так что ec2 для бэкэнда и будет ли связывать это с s3 возможным? – Moe

+0

S3 хорош для хранения больших фрагментов данных. Если его мало, вы можете использовать dynamodb или базу данных mysql. Но вам придется написать обратное приложение (которое будет работать на ec2), к которому будет подключаться ваше приложение iOS. Хотя его можно подключить к базе данных непосредственно из iOS, в целом это не очень хорошая идея в большинстве сенариев. – datasage

ответ

2

S3 - это не магазин базы данных; вы пишете/удаляете/заменяете весь объект.

Вы хотите AWS RDS. Amazon управляет БД (поддерживается MySQL). Скомпонуйте эталонные архитектуры для чего-то, применимого к вашим потребностям. Уменьшите их; они призваны использовать как можно больше AWS-услуг.

http://aws.amazon.com/rds/

http://aws.amazon.com/architecture/

+0

Чтобы хранить данные, скажем, 1000 пользователей со всего мира, было бы лучше использовать Amazon Dynamo DB или AWS RDS? – Moe

1

Другой вариант Amazon Dynamo DB. Это бесконечно малый nosql db с полностью управляемым REST API. Вы не беспокоитесь о росте данных, скорости и т. Д. AWS позаботится обо всех этих проблемах. http://aws.amazon.com/dynamodb/. Даже в этом случае вам нужно иметь некоторый код, работающий в бэкэнд, который получает ваши REST-вызовы из iOS и записывается в Dynamo.

Другие еще более простые решения: https://parse.com/ и https://www.firebase.com/ Это решения, специально предназначенные для ваших нужд - Сделайте мобильное хранилище данных. Они предоставляют клиентский SDK, который имеет очень большое значение с точки зрения автономной синхронизации. Вы просто вызываете SDK из приложений и будете синхронизироваться с базовым каталогом данных, когда доступны соединения - значительно снижает сложность кода!

+0

Для хранения данных из 1000 пользователей со всего мира было бы лучше использовать Amazon Dynamo DB или AWS RDS? – Moe

+0

1000 - небольшое число - любой выбор будет работать. Динамо легче использовать здесь (если у вас нет богатых запросов) - нулевая поддержка поддержки. Еще проще - это Parse (выше). –

+0

Если я решил использовать Parse/Firebase, мне нужно было бы вручную закодировать CDN для извлечения и хранения обновлений местоположения и сообщений (похожих на тип сообщений Whatsapp)? – Moe

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