Несмотря на то, что некоторые предлагали взаимодействовать с вашими процессами через подпроцесс PIPE, по-прежнему остается проблема, что ваш процесс client.py должен ожидать и прослушивать данные на stdin, чтобы выполнить действие.Непонятно, что делает ваш клиент, но, возможно, он просто сидит в цикле чтения из stdin.
@ mfrankli дал общую ссылку на Python IPC в своем ответе.Но, чтобы быть более конкретным, вам нужен некоторый тип реализации прослушивания в вашем client.py, чтобы контроллер отправлял сообщения.Вот несколько различных подходов:
- xmlrpc - Его довольно просто использовать.
- Zeromq и привязки pyzmq : если вы хотите намного больше контролировать то, как ваша система будет взаимодействовать, это более надежный вариант.Вы можете использовать шаблон публикации / подписки, чтобы ваши клиенты слушали контроллер.
Если вас интересует маршрут ZeroMQ, у меня на самом деле есть простой проект, который создает настройку RPC, используя его: https://github.com/justinfx/pyRpc