Как изменить значение переменной во время выполнения из другого скрипта на удаленной машине?

У меня есть локальный компьютер A и удаленный компьютер B. У компьютера A есть сценарий client.py У компьютера B есть server.py У сценария client.py есть переменный порт. Допустим, порт = 5535.

Я запускаю client.py на компьютере A, который использует номер порта для связи через сокет. Мне нужно изменить номер порта на другой номер порта во время работы client.py, чтобы он переключился на другой сервер во время выполнения после уведомления клиента об изменении номера порта. Я использую pyzmq для отправки данных с клиента на сервер, отправляя непрерывный поток данных.

Возможен ли такой сценарий и как я могу это сделать?


person gohar shah    schedule 15.11.2020    source источник


Ответы (1)


Да, это возможно. Вы можете спроектировать/изменить (пока невидимый) код, чтобы PUSH при любой такой необходимости изменить port# на лету на PULL сторону, освободить 5535 и использовать другую.

Затем PULL-сторона должна вызвать методы .disconnect() и .close(), чтобы освободить указанный порт 5535 (плюс уведомить, что она это сделала, возможно, другим PUSH/PULL .bind()-заблокированной стороной, что теперь она может развязать и закрыть .bind()- также заблокированный порт # 5535) и затем установить новое соединение с объявленным new_port#, полученным из первоначального уведомления (которое уже должно было быть .bind() заблокировано на стороне PUSH, не так ли? :o ) ).

Это просто.

person user3666197    schedule 19.11.2020