Vários serviços de economia em um transporte
Pergunta
Apenas buscando a confirmação aqui: o Protocolo de Thrift Apache não parece suportar a execução de vários serviços em um terminal de transporte? (um soquete, arquivo, o que for)
Parece que não consigo descobrir como fazer algo assim na economia:
service otherService {
void dosomething()
}
service rootService {
otherService getOtherService()
}
Parece não haver nenhum conceito de entrada e saída de alças de serviço, finalmente limitado pelo protocolo. Parece que você não pode executar dois serviços em um tubo de transporte. Correto ?
Solução
Correto. Pelo que entendi, apenas o segundo service
Seria gerado pela Thrift, e é isso que seria vinculado ao iniciar o servidor que você cria em seu idioma preferido (Java, Python, etc.).
Outras dicas
Os serviços multiplexados (em essência é o que você deseja fazer aqui) estão sendo integrados agora. Já existem patches para vários idiomas disponíveis, já aceitos ou no processo de revisão.
https://issues.apache.org/jira/browse/thrift-563 é um bom lugar para começar.
PS: revisores e contribuições são bem-vindos ;-)