doc fixes and max-age set to 60

pull/8101/head
Makarand Dharmapurikar 8 years ago
parent a04c678963
commit 012fc18be9
  1. 15
      doc/interop-test-descriptions.md
  2. 2
      test/cpp/interop/interop_server.cc

@ -67,13 +67,17 @@ of POST, and that server sets appropriate cache control headers for the response
to be cached by a proxy. This interop test requires that the server is behind to be cached by a proxy. This interop test requires that the server is behind
a caching proxy. Use of current timestamp in the request prevents accidental a caching proxy. Use of current timestamp in the request prevents accidental
cache matches left over from previous tests. cache matches left over from previous tests.
Note that client adds a `x-user-ip` header with value `1.2.3.4` to the request.
This is done since some proxys such as GFE will not cache requests from
localhost.
Server features: Server features:
* [CacheableUnaryCall][] * [CacheableUnaryCall][]
Procedure: Procedure:
1. Client calls CacheableUnaryCall with `SimpleRequest` request with payload 1. Client calls CacheableUnaryCall with `SimpleRequest` request with payload
set to current timestamp. set to current timestamp. Timestamp format is irrelevant, and resolution is
in nanoseconds.
2. Client calls CacheableUnaryCall with `SimpleRequest` request again 2. Client calls CacheableUnaryCall with `SimpleRequest` request again
immediately with the same payload as the previous request. immediately with the same payload as the previous request.
@ -965,13 +969,12 @@ for the `SimpleRequest.response_type`. If the server does not support the
### CacheableUnaryCall ### CacheableUnaryCall
Server gets the default SimpleRequest proto as the request. The content of the Server gets the default SimpleRequest proto as the request. The content of the
request are ignored. It returns the SimpleResponse proto with the payload set request is ignored. It returns the SimpleResponse proto with the payload set
to current timestamp string. In addition it adds to current timestamp. The timestamp is an integer representing current time
with nanosecond resolution. In addition it adds
1. cache control headers such that the response can be cached by proxies in 1. cache control headers such that the response can be cached by proxies in
the response path. Server should be behind a caching proxy for this test the response path. Server should be behind a caching proxy for this test
to pass. to pass. Currently we set the max-age to 60 seconds.
2. adds a `x-user-ip` header with `1.2.3.4` to the response. This is done
since some proxys such as GFE will not cache requests from localhost.
### CompressedResponse ### CompressedResponse
[CompressedResponse]: #compressedresponse [CompressedResponse]: #compressedresponse

@ -159,7 +159,7 @@ class TestServiceImpl : public TestService::Service {
gpr_timespec ts = gpr_now(GPR_CLOCK_REALTIME); gpr_timespec ts = gpr_now(GPR_CLOCK_REALTIME);
std::string timestamp = std::to_string(ts.tv_nsec); std::string timestamp = std::to_string(ts.tv_nsec);
response->mutable_payload()->set_body(timestamp.c_str(), timestamp.size()); response->mutable_payload()->set_body(timestamp.c_str(), timestamp.size());
context->AddInitialMetadata("cache-control", "max-age=100000, public"); context->AddInitialMetadata("cache-control", "max-age=60, public");
return Status::OK; return Status::OK;
} }

Loading…
Cancel
Save