Class: Google::Apis::ComputeBeta::CachePolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::CachePolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/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::ComputeBeta::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::ComputeBeta::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::ComputeBeta::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::ComputeBeta::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::ComputeBeta::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::ComputeBeta::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.
7714 7715 7716 |
# File 'lib/google/apis/compute_beta/classes.rb', line 7714 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
7628 7629 7630 |
# File 'lib/google/apis/compute_beta/classes.rb', line 7628 def cache_bypass_request_header_names @cache_bypass_request_header_names end |
#cache_key_policy ⇒ Google::Apis::ComputeBeta::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
7634 7635 7636 |
# File 'lib/google/apis/compute_beta/classes.rb', line 7634 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
7640 7641 7642 |
# File 'lib/google/apis/compute_beta/classes.rb', line 7640 def cache_mode @cache_mode end |
#client_ttl ⇒ Google::Apis::ComputeBeta::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
7648 7649 7650 |
# File 'lib/google/apis/compute_beta/classes.rb', line 7648 def client_ttl @client_ttl end |
#default_ttl ⇒ Google::Apis::ComputeBeta::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
7656 7657 7658 |
# File 'lib/google/apis/compute_beta/classes.rb', line 7656 def default_ttl @default_ttl end |
#max_ttl ⇒ Google::Apis::ComputeBeta::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
7664 7665 7666 |
# File 'lib/google/apis/compute_beta/classes.rb', line 7664 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
7684 7685 7686 |
# File 'lib/google/apis/compute_beta/classes.rb', line 7684 def negative_caching @negative_caching end |
#negative_caching_policy ⇒ Array<Google::Apis::ComputeBeta::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
7696 7697 7698 |
# File 'lib/google/apis/compute_beta/classes.rb', line 7696 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
7703 7704 7705 |
# File 'lib/google/apis/compute_beta/classes.rb', line 7703 def request_coalescing @request_coalescing end |
#serve_while_stale ⇒ Google::Apis::ComputeBeta::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
7712 7713 7714 |
# File 'lib/google/apis/compute_beta/classes.rb', line 7712 def serve_while_stale @serve_while_stale end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
7719 7720 7721 7722 7723 7724 7725 7726 7727 7728 7729 7730 |
# File 'lib/google/apis/compute_beta/classes.rb', line 7719 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 |