Let's assume that we have a Search-Service
service Search {
rpc Search (SearchRequest) returns (SearchReply) {}
}
message SearchRequest {
string query = 1;
}
message SearchReply {
repeated string message = 1;
}
Now, let's consider we multiple search engines that are all supposed to implement that interface to provide search.
The wall I am hitting is that gRPC only allow a singleton of the Search service behind a single IP:PORT pair. So, the only way to integrate multiple search engines in an environment is to put each behind a different IP:PORT, it's impossible to have them on the same port.