Довольно давно не имел дело с вебом и серверной стороной, хотелось бы спросить совета. Наверняка даже найдутся люди, которые делали в точности то же самое.
Допустим, есть приложение под IOS, которое без необходимости постоянного подключения к интернету (оффлайновое) отображает некий контент. Этот контент необходимо периодически обновлять (вернее добавлять новый контент и частично изменять имеющийся). Нагрузки пока неизвестны, но, допустим, в пиках нужно выдерживать ~100 запросов обновления в секунду.
Серверная часть будет размещена в облаке.
По поводу добавления нового контента, логика должна быть несложная: пользователь отправляет последние id имеющегося контента, сервер анализирует, формирует ответ и отправляет новый контент в каком-то формате. Обновление имеющегося — отдельная история.
Потому вопросы возникли следующие:
1. Общение между клиентом и сервером. Куда и как отправлять запрос? Обычный POST на какой-то адрес? Отправлять и получать JSON?
2. Технологии. На чем советуете реализовать? Сам имею дело C/С++, работал с С# (не ASP.NET), PHP, Java под android, немного Erlang, но использовать что-то новое — не проблема (тот же python или ruby). PHP + MySql сейчас, наверное, уже не используется или используется мало? В качестве хранилища данных может стоит попробовать Redis? В связке с тем же PHP?
Контента много?
Самый элементарный по-моему это php+mysql+json.
Передаете на апи последний ид и получаете все новое что появилось. В приложении парсите и заносите в базу новые данные.
Что бы уменьшить нагрузку и не делать каждый раз запросы к базе можно использовать memcache.
Создание такого бэкэнда займет от силы минут 20 с тестами и перекурами :)
Контента совсем немного, ~1500 записей всего и примерно +20 каждую неделю. Спасибо за ответ, самому не хочется городить что-то сложное для простых вещей.
При таком количестве не стоит сильно заморачиваться и придумывать что то сложнее.
Главное что бы ид записей в БД приложения совпадало с ид на сервере.
Если бы размеры были большими, то было бы разумно генерировать ответ/архивировать/открывать на устройстве/парсить. Но разработка такого варианта как серверной части, так и апп займет много времени. Так что при Вашем количестве это будет лишним.
Степан: Привет Степан! Недавно решал написать приложение, на кордове. (js,html,css). Надо сделать регистрацию, авторизацию, в общем работа с бекендом. При передаче данных через ajax на сторонний сайт ошибка Access-Control-Allow-Origin. Но как я могу прописать, если приложение локально на пк. Подскажите, как решить эту проблему.