Class: Google::Apis::ComputeAlpha::CachePolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::CachePolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb
Overview
Message containing CachePolicy configuration for URL Map's Route Action.
Instance Attribute Summary collapse
-
#cache_bypass_request_header_names ⇒ Array<String>
Bypass the cache when the specified request headers are matched by name, e.g.
-
#cache_key_policy ⇒ Google::Apis::ComputeAlpha::CachePolicyCacheKeyPolicy
Message containing what to include in the cache key for a request for Cache Policy defined on Route Action.
-
#cache_mode ⇒ String
Specifies the cache setting for all responses from this route.
-
#client_ttl ⇒ Google::Apis::ComputeAlpha::Duration
A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution.
-
#default_ttl ⇒ Google::Apis::ComputeAlpha::Duration
A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution.
-
#max_ttl ⇒ Google::Apis::ComputeAlpha::Duration
A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution.
-
#negative_caching ⇒ Boolean
(also: #negative_caching?)
Negative caching allows per-status code TTLs to be set, in order to apply fine-grained caching for common errors or redirects.
-
#negative_caching_policy ⇒ Array<Google::Apis::ComputeAlpha::CachePolicyNegativeCachingPolicy>
Sets a cache TTL for the specified HTTP status code.
-
#request_coalescing ⇒ Boolean
(also: #request_coalescing?)
If true then Cloud CDN will combine multiple concurrent cache fill requests into a small number of requests to the origin.
-
#serve_while_stale ⇒ Google::Apis::ComputeAlpha::Duration
A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution.
Instance Method Summary collapse
-
#initialize(**args) ⇒ CachePolicy
constructor
A new instance of CachePolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ CachePolicy
Returns a new instance of CachePolicy.
8370 8371 8372 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 8370 def initialize(**args) update!(**args) end |
Instance Attribute Details
#cache_bypass_request_header_names ⇒ Array<String>
Bypass the cache when the specified request headers are matched by name,
e.g. Pragma or Authorization headers. Values are case-insensitive. Up to 5
header names can be specified. The cache is bypassed for all cacheMode
values.
Corresponds to the JSON property cacheBypassRequestHeaderNames
8284 8285 8286 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 8284 def cache_bypass_request_header_names @cache_bypass_request_header_names end |
#cache_key_policy ⇒ Google::Apis::ComputeAlpha::CachePolicyCacheKeyPolicy
Message containing what to include in the cache key for a request for Cache
Policy defined on Route Action.
Corresponds to the JSON property cacheKeyPolicy
8290 8291 8292 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 8290 def cache_key_policy @cache_key_policy end |
#cache_mode ⇒ String
Specifies the cache setting for all responses from this route. If not
specified, Cloud CDN uses CACHE_ALL_STATIC mode.
Corresponds to the JSON property cacheMode
8296 8297 8298 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 8296 def cache_mode @cache_mode end |
#client_ttl ⇒ Google::Apis::ComputeAlpha::Duration
A Duration represents a fixed-length span of time represented
as a count of seconds and fractions of seconds at nanosecond
resolution. It is independent of any calendar and concepts like "day"
or "month". Range is approximately 10,000 years.
Corresponds to the JSON property clientTtl
8304 8305 8306 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 8304 def client_ttl @client_ttl end |
#default_ttl ⇒ Google::Apis::ComputeAlpha::Duration
A Duration represents a fixed-length span of time represented
as a count of seconds and fractions of seconds at nanosecond
resolution. It is independent of any calendar and concepts like "day"
or "month". Range is approximately 10,000 years.
Corresponds to the JSON property defaultTtl
8312 8313 8314 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 8312 def default_ttl @default_ttl end |
#max_ttl ⇒ Google::Apis::ComputeAlpha::Duration
A Duration represents a fixed-length span of time represented
as a count of seconds and fractions of seconds at nanosecond
resolution. It is independent of any calendar and concepts like "day"
or "month". Range is approximately 10,000 years.
Corresponds to the JSON property maxTtl
8320 8321 8322 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 8320 def max_ttl @max_ttl end |
#negative_caching ⇒ Boolean Also known as: negative_caching?
Negative caching allows per-status code TTLs to be set, in order
to apply fine-grained caching for common errors or redirects.
This can reduce the load on your origin and improve end-user
experience by reducing response latency.
When the cacheMode is set to CACHE_ALL_STATIC or
USE_ORIGIN_HEADERS, negative caching applies to responses with
the specified response code that lack any Cache-Control, Expires, or
Pragma: no-cache directives. When the cacheMode is set to
FORCE_CACHE_ALL, negative caching applies to all responses
with the specified response code, and overrides any caching headers. By
default, Cloud CDN applies the following TTLs to these HTTP status codes:
- 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m
- 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s
- 405 (Method Not Found), 501 (Not Implemented): 60s
These defaults can be overridden in
negativeCachingPolicy. If not specified, Cloud CDN applies negative caching by default. Corresponds to the JSON propertynegativeCaching
8340 8341 8342 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 8340 def negative_caching @negative_caching end |
#negative_caching_policy ⇒ Array<Google::Apis::ComputeAlpha::CachePolicyNegativeCachingPolicy>
Sets a cache TTL for the specified HTTP status code.
negativeCaching must be enabled to configure negativeCachingPolicy.
Omitting the policy and leaving negativeCaching enabled will use Cloud
CDN's default cache TTLs. Note that when specifying an explicit
negativeCachingPolicy, you should take care to specify a cache TTL for
all response codes that you wish to cache. Cloud CDN will not apply any
default negative caching when a policy exists.
Corresponds to the JSON property negativeCachingPolicy
8352 8353 8354 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 8352 def negative_caching_policy @negative_caching_policy end |
#request_coalescing ⇒ Boolean Also known as: request_coalescing?
If true then Cloud CDN will combine multiple concurrent cache fill
requests into a small number of requests to the origin. If not specified,
Cloud CDN applies request coalescing by default.
Corresponds to the JSON property requestCoalescing
8359 8360 8361 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 8359 def request_coalescing @request_coalescing end |
#serve_while_stale ⇒ Google::Apis::ComputeAlpha::Duration
A Duration represents a fixed-length span of time represented
as a count of seconds and fractions of seconds at nanosecond
resolution. It is independent of any calendar and concepts like "day"
or "month". Range is approximately 10,000 years.
Corresponds to the JSON property serveWhileStale
8368 8369 8370 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 8368 def serve_while_stale @serve_while_stale end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
8375 8376 8377 8378 8379 8380 8381 8382 8383 8384 8385 8386 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 8375 def update!(**args) @cache_bypass_request_header_names = args[:cache_bypass_request_header_names] if args.key?(:cache_bypass_request_header_names) @cache_key_policy = args[:cache_key_policy] if args.key?(:cache_key_policy) @cache_mode = args[:cache_mode] if args.key?(:cache_mode) @client_ttl = args[:client_ttl] if args.key?(:client_ttl) @default_ttl = args[:default_ttl] if args.key?(:default_ttl) @max_ttl = args[:max_ttl] if args.key?(:max_ttl) @negative_caching = args[:negative_caching] if args.key?(:negative_caching) @negative_caching_policy = args[:negative_caching_policy] if args.key?(:negative_caching_policy) @request_coalescing = args[:request_coalescing] if args.key?(:request_coalescing) @serve_while_stale = args[:serve_while_stale] if args.key?(:serve_while_stale) end |