ну в основном у меня одна ведущая система и 3 подчиненные системы. Я использовал фазу «запрос / ответ» для отправки контента на 3 из моих клиентских систем, поскольку это по сути решает мою проблему разделения данных. После отправки контента в 3 из моих клиентских систем я закрываю сокет, который отвечал за REQ / REP topolgy, и создал еще одну связку сокетов, которая соединяется с отдельными подчиненными системами для того, чтобы получать контент от всех трех систем. Я запустил весь код в localhost, у меня не было никаких проблем, и все прошло гладко, даже когда я пытался отправить наборы данных объемом 40 МБ из одной клиентской системы в главную систему.
Проблема в том, что я попытался реализовать это по локальной сети в моей лаборатории
Фаза REQ / REP проходит гладко, поэтому в основном все клиентские системы выбирают наборы данных для работы.
Индивидуальная PAIR с клиентом вроде не работает, когда я пытаюсь обработать большие наборы данных (например, 40 МБ, что я не считаю большим, так как я загрузил содержимое в словарь, а размер объекта словаря достиг 24 МБ) вроде задыхается и по какой-то причине не обрабатывает.
Я понятия не имею, почему в локальной сети он ведет себя иначе, чем в моей системе.
Системы, которые я использую в локальной сети - двухъядерные 64-битные AMD с 2 ГБ ОЗУ (все 4 системы)
Incase, если вы заинтересованы, чтобы запустить код:
Основной системный код: http://codepad.org/5uVCEb42
Salve1: http://codepad.org/LNmi9vu2
Slave2: http://codepad.org/0vmEAJYc (этот файл извлекает 40 МБ содержимого из файла и, наконец, передается в главную систему)
Slave3: http://codepad.org/d565lgiv