Class: Aws::AppSync::Types::CreateApiCacheRequest

Inherits:
Struct
  • Object
show all
Includes:
Structure
Defined in:
lib/aws-sdk-appsync/types.rb

Overview

Represents the input of a CreateApiCache operation.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#api_caching_behaviorString

Caching behavior.

  • **FULL_REQUEST_CACHING**: All requests from the same user are cached. Individual resolvers are automatically cached. All API calls will try to return responses from the cache.

  • **PER_RESOLVER_CACHING**: Individual resolvers that you specify are cached.

  • **OPERATION_LEVEL_CACHING**: Full requests are cached together and returned without executing resolvers.



1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
# File 'lib/aws-sdk-appsync/types.rb', line 1002

class CreateApiCacheRequest < Struct.new(
  :api_id,
  :ttl,
  :transit_encryption_enabled,
  :at_rest_encryption_enabled,
  :api_caching_behavior,
  :type,
  :health_metrics_config)
  SENSITIVE = []
  include Aws::Structure
end

#api_idString

The GraphQL API ID.



1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
# File 'lib/aws-sdk-appsync/types.rb', line 1002

class CreateApiCacheRequest < Struct.new(
  :api_id,
  :ttl,
  :transit_encryption_enabled,
  :at_rest_encryption_enabled,
  :api_caching_behavior,
  :type,
  :health_metrics_config)
  SENSITIVE = []
  include Aws::Structure
end

#at_rest_encryption_enabledBoolean

At-rest encryption flag for cache. You cannot update this setting after creation.



1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
# File 'lib/aws-sdk-appsync/types.rb', line 1002

class CreateApiCacheRequest < Struct.new(
  :api_id,
  :ttl,
  :transit_encryption_enabled,
  :at_rest_encryption_enabled,
  :api_caching_behavior,
  :type,
  :health_metrics_config)
  SENSITIVE = []
  include Aws::Structure
end

#health_metrics_configString

Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:

  • NetworkBandwidthOutAllowanceExceeded: The network packets dropped because the throughput exceeded the aggregated bandwidth limit. This is useful for diagnosing bottlenecks in a cache configuration.

  • EngineCPUUtilization: The CPU utilization (percentage) allocated to the Redis process. This is useful for diagnosing bottlenecks in a cache configuration.

Metrics will be recorded by API ID. You can set the value to ENABLED or DISABLED.



1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
# File 'lib/aws-sdk-appsync/types.rb', line 1002

class CreateApiCacheRequest < Struct.new(
  :api_id,
  :ttl,
  :transit_encryption_enabled,
  :at_rest_encryption_enabled,
  :api_caching_behavior,
  :type,
  :health_metrics_config)
  SENSITIVE = []
  include Aws::Structure
end

#transit_encryption_enabledBoolean

Transit encryption flag when connecting to cache. You cannot update this setting after creation.



1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
# File 'lib/aws-sdk-appsync/types.rb', line 1002

class CreateApiCacheRequest < Struct.new(
  :api_id,
  :ttl,
  :transit_encryption_enabled,
  :at_rest_encryption_enabled,
  :api_caching_behavior,
  :type,
  :health_metrics_config)
  SENSITIVE = []
  include Aws::Structure
end

#ttlInteger

TTL in seconds for cache entries.

Valid values are 1–3,600 seconds.



1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
# File 'lib/aws-sdk-appsync/types.rb', line 1002

class CreateApiCacheRequest < Struct.new(
  :api_id,
  :ttl,
  :transit_encryption_enabled,
  :at_rest_encryption_enabled,
  :api_caching_behavior,
  :type,
  :health_metrics_config)
  SENSITIVE = []
  include Aws::Structure
end

#typeString

The cache instance type. Valid values are

  • SMALL

  • MEDIUM

  • LARGE

  • XLARGE

  • LARGE_2X

  • LARGE_4X

  • LARGE_8X (not available in all regions)

  • LARGE_12X

Historically, instance types were identified by an EC2-style value. As of July 2020, this is deprecated, and the generic identifiers above should be used.

The following legacy instance types are available, but their use is discouraged:

  • **T2_SMALL**: A t2.small instance type.

  • **T2_MEDIUM**: A t2.medium instance type.

  • **R4_LARGE**: A r4.large instance type.

  • **R4_XLARGE**: A r4.xlarge instance type.

  • **R4_2XLARGE**: A r4.2xlarge instance type.

  • **R4_4XLARGE**: A r4.4xlarge instance type.

  • **R4_8XLARGE**: A r4.8xlarge instance type.



1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
# File 'lib/aws-sdk-appsync/types.rb', line 1002

class CreateApiCacheRequest < Struct.new(
  :api_id,
  :ttl,
  :transit_encryption_enabled,
  :at_rest_encryption_enabled,
  :api_caching_behavior,
  :type,
  :health_metrics_config)
  SENSITIVE = []
  include Aws::Structure
end