gRPC服务器如何同时成为客户机和服务器?

2024-05-16 17:21:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我是gRPC的新手,我正在尝试做一些事情。我正在用python开发。我有一个应用程序,它有多个客户端和一个服务器。我的应用程序有创建、插入、删除和更新数据的方法。 这是我的一张原稿:

message Usuario{
    string usuario = 1;
}

message Procedimentos{
    string idProcedimento = 1;
    string descricaoProcedimento = 2;
    string idPaciente = 3;
    string data = 4;
}

message Pacientes {
    string idPaciente = 1;
    string nomeRN = 2;
    string maeRN = 3;
    string dataHoraNasc = 4;
    float peso = 5;
    enum Sexo{
                SEXO_DESCONHECIDO = 0;
                FEMININO = 1;
                MASCULINO = 2;
            }

    Sexo sexo = 6;
    string cidadeNasc = 7;
    int32 idadeGestacional = 8;
    string dataDiagnostico = 9;
    enum Parto{
        PARTO_DESCONHECIDO = 0;
        CESARIA = 1;
        NORMAL = 2;         
    }

    Parto tipoParto = 10;
    string descricaoUTI = 11;
    string descricaoStatus = 12;

    repeated Procedimentos procedimentos = 13;
    Medicos medico = 14;
}

message Medicos{
    string nome = 1;
    string CRM = 2;
    string dataNasc = 3;
}

service MyService{
    rpc InserirPacientes(RegistrarPacientes) returns (RegistrarPacientesResposta) {}
    rpc EditarPacientes(AtualizarPacientes) returns (AtualizarPacientesResposta) {}
    rpc ExcluirPacientes(DeletarPacientes) returns (DeletarPacientesResposta) {}
    rpc PesquisarPacientes(ConsultarPacientes) returns (ConsultarPacientesResposta) {}
    rpc ListarPacientes(TodosPacientes) returns (TodosPacientesResposta) {}

    rpc InserirProcedimentos(RegistrarProcedimentos) returns (RegistrarProcedimentosResposta) {}
    rpc EditarProcedimentos(AtualizarProcedimentos) returns (AtualizarProcedimentosResposta) {}
    rpc ExcluirProcedimentos(DeletarProcedimentos) returns (DeletarProcedimentosResposta) {}
    rpc PesquisarProcedimentos(ConsultarProcedimentos) returns (ConsultarProcedimentosResposta) {}
    rpc ListarProcedimentos(TodosProcedimentosPaciente) returns (TodosProcedimentosPacienteResposta) {}
}

我想要的是创建多个服务器,这些服务器需要相互通信,完全连接(每个服务器都知道其他服务器),因此一个服务器将同时是客户机和服务器。服务器有时需要执行请求以知道有多少服务器处于活动状态。 我怎样才能在服务器上做到这一点?请给我一段代码。你知道吗

任何帮助都会很好。你知道吗


Tags: 服务器应用程序messagegrpcstringenumrpcreturns