create_api_cache
async
¶
create_api_cache(
api_id: String,
ttl: Long,
api_caching_behavior: ApiCachingBehavior,
type: ApiCacheType,
*,
config_overrides: Optional[AsyncAppSyncClientConfig] = None,
transit_encryption_enabled: Optional[Boolean] = None,
at_rest_encryption_enabled: Optional[Boolean] = None,
health_metrics_config: Optional[CacheHealthMetricsConfig] = None,
) -> CreateApiCacheResponse
Creates a cache for the GraphQL API.
Parameters:
-
api_id(String) –The GraphQL API ID.
-
ttl(Long) –TTL in seconds for cache entries.
Valid values are 1–3,600 seconds.
-
transit_encryption_enabled(Optional[Boolean], default:None) –Transit encryption flag when connecting to cache. You cannot update this setting after creation.
-
at_rest_encryption_enabled(Optional[Boolean], default:None) –At-rest encryption flag for cache. You cannot update this setting after creation.
-
api_caching_behavior(ApiCachingBehavior) –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.
-
-
type(ApiCacheType) –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.
-
-
health_metrics_config(Optional[CacheHealthMetricsConfig], default:None) –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
ENABLEDorDISABLED. -
Raises:
-
BadRequestException–The request is not well formed. For example, a value is invalid or a required field is missing. Check the field values, and then try again.
-
ConcurrentModificationException–Another modification is in progress at this time and it must complete before you can make your change.
-
InternalFailureException–An internal AppSync error occurred. Try your request again.
-
NotFoundException–The resource specified in the request was not found. Check the resource, and then try again.
-
UnauthorizedException–You aren't authorized to perform this operation.
-
UnknownServiceError–The service returned an error code this client does not model.
Source code in docs_src/capo_appsync/_services/async_app_sync.py
603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 | |