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

时间:2019-10-23 13:02:59

标签: python server client grpc

我是gRPC的新手,我正在尝试做一些事情。我正在用python开发。我有一个具有多个客户端和一个服务器的应用程序。我的应用程序具有创建,插入,删除和更新数据的方法。 这是我的.proto文件的一部分:

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) {}
}

我想要创建多个服务器,并且这些服务器需要相互通信,完全连接(每个服务器都知道其他服务器),因此一台服务器将同时是客户端和服务器。服务器有时需要执行请求才能知道有多少服务器在运行。 我该如何在服务器上执行此操作?请为我提供一段代码。

任何帮助都会很棒。

0 个答案:

没有答案