Как происходит взаимодействие в Java через TCP-сокеты на той же машине - PullRequest
0 голосов
/ 16 февраля 2011

У меня есть два сервера, написанные на Java, которые общаются через сокеты и TCP. Оба сервера находятся на одном компьютере с Linux. Если бы серверы находились на разных машинах, то данные должны были бы проходить через сетевые адаптеры и сетевые кабели, но поскольку серверы находятся на одной машине, как ОС фактически эффективно перемещает данные с одного сервера на другой.

Ответы [ 2 ]

2 голосов
/ 16 февраля 2011

Как правило, сообщения будут отправляться через интерфейс обратной связи :

В TCP / IP устройство обратной связи - это виртуальный сетевой интерфейс, реализованный только в программном обеспечении и не связанный с каким-либо оборудованием, но полностью интегрированный во внутреннюю сетевую инфраструктуру компьютерной системы. Любой трафик, который компьютерная программа отправляет на интерфейс обратной связи, немедленно поступает на тот же интерфейс.

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

0 голосов
/ 16 февраля 2011

Если две программы используют TCP / IP для связи на одном компьютере, они, вероятно, подключены через интерфейс обратной связи

...