Thriftの別のサービスのメソッドに引数としてサービスを渡すことはできますか?Thriftサービスを引数として渡す
service MyService {
void foo(1: MyOtherService),
}
service MyOtherService {
void bar(),
}
Thriftの別のサービスのメソッドに引数としてサービスを渡すことはできますか?Thriftサービスを引数として渡す
service MyService {
void foo(1: MyOtherService),
}
service MyOtherService {
void bar(),
}
サービスは(他の言葉で:ネットワークを介してサービスを送信しても意味 - あなたのfoo機能透過引数を指定して、リモートマシン上で実行される)スリフトの直列化可能ではありません。
と思っています。ではなく、です。
実際の目標は何ですか? 私は直感を持っていますあなたは良いOOパターンが欲しいです。 この種のパラメータ化ですか?
など。 gRPC/protobufは、1つのユースケースになる可能性のある組み込みストリーミングを提供します。 APIを適切な方法で設計すると、Thriftでエミュレートできます – JensG
目的は、サービスを部分的に異なる言語で実装できるようにすることでした。サービスはメソッドのシグネチャに依存しますが、実装は異なります。しかし、これはネイティブ・スリフトでは不可能と思われます。 – ashwin153
0.署名に同意してください!=実装。 1.すべてのソリューションは、完全に混合言語にすることができますが、BUT .... 2.すべてのパイプは2つの端を持っています。私は、同じ側の2つの(部分的な)サービスが他の側のためのコミュニティで働きたいと思っています。質問:世界とは異なる言語、f.e. Java /、NET?これは非常に簡単です –
[恐怖の非同期関数のコールバック?](https://stackoverflow.com/questions/2554999/callbacks-in-thrift-asynchronous-functions)の重複の可能性あり – JensG