benchmark_service.proto 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. // Copyright 2015 gRPC authors.
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. // An integration test service that covers all the method signature permutations
  15. // of unary/streaming requests/responses.
  16. syntax = "proto3";
  17. import "grpc/testing/messages.proto";
  18. package grpc.testing;
  19. option java_multiple_files = true;
  20. option java_package = "io.grpc.testing";
  21. option java_outer_classname = "BenchmarkServiceProto";
  22. service BenchmarkService {
  23. // One request followed by one response.
  24. // The server returns the client payload as-is.
  25. rpc UnaryCall(SimpleRequest) returns (SimpleResponse);
  26. // Repeated sequence of one request followed by one response.
  27. // Should be called streaming ping-pong
  28. // The server returns the client payload as-is on each response
  29. rpc StreamingCall(stream SimpleRequest) returns (stream SimpleResponse);
  30. // Single-sided unbounded streaming from client to server
  31. // The server returns the client payload as-is once the client does WritesDone
  32. rpc StreamingFromClient(stream SimpleRequest) returns (SimpleResponse);
  33. // Single-sided unbounded streaming from server to client
  34. // The server repeatedly returns the client payload as-is
  35. rpc StreamingFromServer(SimpleRequest) returns (stream SimpleResponse);
  36. // Two-sided unbounded streaming between server to client
  37. // Both sides send the content of their own choice to the other
  38. rpc StreamingBothWays(stream SimpleRequest) returns (stream SimpleResponse);
  39. }