Похоже, у вас есть много клиентов, взаимодействующих с вашими серверами через HTTP. Стандартное решение заключается в создании обратного прокси-сервера между клиентом и вашими серверами - этот прокси-сервер затем перенаправляет соединения на соответствующий сервер в зависимости от URL-адреса. Обратный прокси-сервер может работать на любом из ваших существующих серверов или на своем собственном сервере, чтобы снизить нагрузку.
Если ваши данные кэшируются, обратный прокси-сервер также может выполнять кэширование ваших результатов.
Существует множество обратных прокси-серверов, и вы захотите выбрать один из них в зависимости от рабочей нагрузки. Вам нужно, чтобы он был хорошо настраиваемым? Являются ли данные общедоступными или основаны на логинах? Как долго длится каждое соединение / сколько соединений вы хотите держать открытыми одновременно?
Squid , Varnish , HAProxy - хорошие обратные прокси, и даже Apache может сделать это для вас.
Я планирую использовать HAProxy для Gridspy, мой проект , так как у меня много постоянных соединений с моими клиентами и я хочу разместить орбитальный сервер по тому же пути URL, что и мой сервер django. См. В этом руководстве для получения дополнительной информации о том, как переадресовать множество соединений через порт 80 с одного сервера на несколько. Это руководство сфокусировано на Comet, но ваша проблема еще проще.
Если вы рассматриваете текущее соединение tcp / ip из браузера обратно на свои серверы, серьезно подумайте о Orbited . Смотрите этот урок о графах через orbited и morbidQ . Orbited также будет проходить через брандмауэры и прокси лучше, чем большинство пользовательских решений, так как выглядит как обычный HTTP-трафик.