Сервер для мобильных и веб-приложений - PullRequest
1 голос
/ 26 августа 2011

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

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

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

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

Ответы [ 2 ]

0 голосов
/ 27 августа 2011

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

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

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

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

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

0 голосов
/ 26 августа 2011

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

...