Сервер для мобильных и веб-приложений

Я планирую создать большое приложение. Он будет иметь интерфейс на основе браузера, а также интерфейс мобильного приложения (iOS, Android, Blackberry).

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

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

Однако будет много данных, и я не думаю, что PHP будет лучшей базой для этого. Поэтому я изучаю альтернативы. Есть мысли о том, с чего начать?

2 ответа

Вы можете использовать такую ​​среду, как Rhomobile Rhomobile, которая генерирует клиенты на основе вашего браузера, а также они предлагают серверный компонент: http://rhomobile.com/products/rhosync/

Обычной практикой будет разделение функциональности бэкэнда между различными серверами.

  • Сервер 1: обслуживать ваш статический контент
  • Сервер 2: обслуживать динамически генерируемый контент (вещи, основанные на запросах, требующих ввода-вывода, например, взаимодействие с БД
  • Сервер 3: выделенная инфраструктура реального времени для функциональности push-уведомлений в реальном времени

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

Моя область интересов - это запуск в реальном времени, так что здесь есть немного больше информации об этом. Если вы хотите придерживаться PHP, есть проект phpwebsocket. Если вы хотите взглянуть на Java, то есть [WaterSpout} (http://www.spoutserver.com/), jwebsocket и Jetty, которые уже давно используются (или были в последний раз, когда я проверял), используемые Twitter Потоковое API.

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

Другие вопросы по тегам