У меня работает один сервер GRPC.
скажем: localhost, 46001
У меня есть программа на Python, которая создает пул процессов из 4 процессов. Здесь пул процессов настраивается:
Process_Pool(Process): have a process dict with 4 running process context.
Я сохранил этот пул процессов для моего варианта использования. Примечание : эта функциональность работает нормально, как я тестировал без участия GRPC.
Клиентская реализация GRPC имеет вид:
class Client(object):
def __init__(self, host, port):
self.host = host
self.server_port = port
self.channel = grpc.insecure_channel("{}:{}".format(self.host, self.server_port))
self.stub = some_server_pb2_grpc.SomeInterfaceStub(self.channel)
Что работает нормально, когда я запускаю его из командной строки:
питон
client = Client ("localhost", 46001)
my_dict = {'отметка времени': 1555421947, 'дополнительная_информация': {}}
client.set_status (my_dict) * * тысячу двадцать-один
Проблема, с которой я сталкиваюсь при создании запроса клиента GRPC к серверу из этих 4 процессов, таких как:
client = Client("localhost", 46001)
client.set_status(some_dict)
Процесс неожиданно завершается. Никакие журналы не напечатаны далее. Я обработал каждое исключение, даже вокруг приведенного выше кода вызова.
Мое единственное заключение до сих пор: GRPC не работает с вновь порожденными процессами.
Может кто-нибудь помочь мне в решении этой проблемы?