2015-08-15 2 views
0

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

Мой вопрос фактически связан с HTTP-соединением между двумя машинами, используя P2P или облачное дрожание.

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

В офисе A и Office B есть сервер с запущенным моим приложением, и каждый сервер должен говорить друг с другом HTTP GET/POSTS.

Мое приложение отлично работает, если каждый офис имеет общедоступный IP-адрес, а маршрутизаторы настроены правильно.

Но теперь моя проблема в том, что использование этого REAL WORLD должно быть независимым от типа подключения к Интернету и сетевых конфигураций.

Я заметил, что все больше устройств, таких как IP-камеры и DVR, теперь имеют соединения P2P w/c, что позволяет легко подключать устройства даже через брандмауэры.

В основном устройства имеет заранее установленное имя IP/Domain с/с для P2P-сервер ..

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

Это то, что я хочу имитировать мое приложение.

Возможно ли использовать клиентское приложение на базе LAMP? Это действительно сложно? Есть ли готовые серверы P2P, которые легко установить и настроить для моей цели?

+0

В чем проблема, которую вы пытаетесь решить? Вы хотите, чтобы два или более веб-серверов синхронизировали данные? Если это так, я не думаю, что вам нужен P2P. Просто используйте cURL для каждого, указывая на другой сервер или, возможно, Rsync в фоновом режиме. – halfer

+0

Что означает «w/c»? – halfer

ответ

0

Существует нет «простого» способа сделать p2p и нет модуля или метода для этого с помощью php или apache.

Приложения p2p, такие как BitTorrent или более ранние версии Skype, обычно работают, обмениваясь данными с вашим маршрутизатором, чтобы эффективно открыть порт, к которому будут подключаться другие клиенты. Если вы не можете открыть порт на своем маршрутизаторе, вам необходимо, чтобы оба клиента подключились к стороннему серверу и запросили маршрут через него.

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

Если меня попросили сделать это, я бы одно из следующих действий:

  • установить постоянное соединение VPN между 2 офисами, чтобы они могли видеть серверы друг друга
  • разместить сервера на публике за пределами обоих офисов, и они оба общаются с этим.
+0

Привет, страх, спасибо за этого человека. VPN не подходит для моей цели. Мне просто нужно подражать тому, как работают эти облачные IP-камеры. Так что вариант 2 может быть чем-то, что будет работать для меня. но это означает, что изменение дизайна абсолютно верно? где обеим сторонам нужно будет размещать данные на сервере, а сервер будет передавать их и с каждой стороны? как средний человек? я надеялся, что только сервер будет поддерживать начальную ссылку, тогда обе стороны могут связываться напрямую. Угадай, что это за столом? – BrownChiLD