Como implementar um servidor python assíncrono grpc?
Preciso chamar uma tarefa de aipo para cada solicitação de GRPC e retornar o resultado. Na implementação GRPC padrão, cada solicitação é processada em um encadeamento separado de um conjunto de encadeamentos.
No meu caso, o servidor deve processar ~ 400 solicitações no modo em lote por segundo. Portanto, uma solicitação pode ter que esperar 1 segundo para o resultado devido ao processamento em lote, o que significa que o tamanho do conjunto de encadeamentos deve ser maior que 400 para evitar o bloqueio.
Isso pode ser feito de forma assíncrona? Muito obrigado.
class EventReporting(ss_pb2.BetaEventReportingServicer, ss_pb2.BetaDeviceMgtServicer):
def ReportEvent(self, request, context):
res = tasks.add.delay(1,2)
result = res.get() ->here i have to block
return ss_pb2.GeneralReply(message='Hello, %s!' % result.message)