#[non_exhaustive]pub struct ReservedCacheNodesOffering { /* private fields */ }
Expand description
Describes all of the attributes of a reserved cache node offering.
Implementations§
source§impl ReservedCacheNodesOffering
impl ReservedCacheNodesOffering
sourcepub fn reserved_cache_nodes_offering_id(&self) -> Option<&str>
pub fn reserved_cache_nodes_offering_id(&self) -> Option<&str>
A unique identifier for the reserved cache node offering.
sourcepub fn cache_node_type(&self) -> Option<&str>
pub fn cache_node_type(&self) -> Option<&str>
The cache node type for the reserved cache node.
The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.
-
General purpose:
-
Current generation:
M6g node types: (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward):
cache.m6g.large
,cache.m6g.xlarge
,cache.m6g.2xlarge
,cache.m6g.4xlarge
,cache.m6g.8xlarge
,cache.m6g.12xlarge
,cache.m6g.16xlarge
For region availability, see Supported Node Types
M5 node types:
cache.m5.large
,cache.m5.xlarge
,cache.m5.2xlarge
,cache.m5.4xlarge
,cache.m5.12xlarge
,cache.m5.24xlarge
M4 node types:
cache.m4.large
,cache.m4.xlarge
,cache.m4.2xlarge
,cache.m4.4xlarge
,cache.m4.10xlarge
T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward):
cache.t4g.micro
,cache.t4g.small
,cache.t4g.medium
T3 node types:
cache.t3.micro
,cache.t3.small
,cache.t3.medium
T2 node types:
cache.t2.micro
,cache.t2.small
,cache.t2.medium
-
Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)
T1 node types:
cache.t1.micro
M1 node types:
cache.m1.small
,cache.m1.medium
,cache.m1.large
,cache.m1.xlarge
M3 node types:
cache.m3.medium
,cache.m3.large
,cache.m3.xlarge
,cache.m3.2xlarge
-
-
Compute optimized:
-
Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)
C1 node types:
cache.c1.xlarge
-
-
Memory optimized with data tiering:
-
Current generation:
R6gd node types (available only for Redis engine version 6.2 onward).
cache.r6gd.xlarge
,cache.r6gd.2xlarge
,cache.r6gd.4xlarge
,cache.r6gd.8xlarge
,cache.r6gd.12xlarge
,cache.r6gd.16xlarge
-
-
Memory optimized:
-
Current generation:
R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).
cache.r6g.large
,cache.r6g.xlarge
,cache.r6g.2xlarge
,cache.r6g.4xlarge
,cache.r6g.8xlarge
,cache.r6g.12xlarge
,cache.r6g.16xlarge
For region availability, see Supported Node Types
R5 node types:
cache.r5.large
,cache.r5.xlarge
,cache.r5.2xlarge
,cache.r5.4xlarge
,cache.r5.12xlarge
,cache.r5.24xlarge
R4 node types:
cache.r4.large
,cache.r4.xlarge
,cache.r4.2xlarge
,cache.r4.4xlarge
,cache.r4.8xlarge
,cache.r4.16xlarge
-
Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)
M2 node types:
cache.m2.xlarge
,cache.m2.2xlarge
,cache.m2.4xlarge
R3 node types:
cache.r3.large
,cache.r3.xlarge
,cache.r3.2xlarge
,cache.r3.4xlarge
,cache.r3.8xlarge
-
Additional node type info
-
All current generation instance types are created in Amazon VPC by default.
-
Redis append-only files (AOF) are not supported for T1 or T2 instances.
-
Redis Multi-AZ with automatic failover is not supported on T1 instances.
-
Redis configuration variables
appendonly
andappendfsync
are not supported on Redis version 2.8.22 and later.
sourcepub fn fixed_price(&self) -> f64
pub fn fixed_price(&self) -> f64
The fixed price charged for this offering.
sourcepub fn usage_price(&self) -> f64
pub fn usage_price(&self) -> f64
The hourly price charged for this offering.
sourcepub fn product_description(&self) -> Option<&str>
pub fn product_description(&self) -> Option<&str>
The cache engine used by the offering.
sourcepub fn offering_type(&self) -> Option<&str>
pub fn offering_type(&self) -> Option<&str>
The offering type.
sourcepub fn recurring_charges(&self) -> Option<&[RecurringCharge]>
pub fn recurring_charges(&self) -> Option<&[RecurringCharge]>
The recurring price charged to run this reserved cache node.
source§impl ReservedCacheNodesOffering
impl ReservedCacheNodesOffering
sourcepub fn builder() -> Builder
pub fn builder() -> Builder
Creates a new builder-style object to manufacture ReservedCacheNodesOffering
.
Examples found in repository?
9785 9786 9787 9788 9789 9790 9791 9792 9793 9794 9795 9796 9797 9798 9799 9800 9801 9802 9803 9804 9805 9806 9807 9808 9809 9810 9811 9812 9813 9814 9815 9816 9817 9818 9819 9820 9821 9822 9823 9824 9825 9826 9827 9828 9829 9830 9831 9832 9833 9834 9835 9836 9837 9838 9839 9840 9841 9842 9843 9844 9845 9846 9847 9848 9849 9850 9851 9852 9853 9854 9855 9856 9857 9858 9859 9860 9861 9862 9863 9864 9865 9866 9867 9868 9869 9870 9871 9872 9873 9874 9875 9876 9877 9878 9879 9880 9881 9882 9883 9884 9885 9886 9887 9888 9889 9890 9891 9892 9893 9894 9895 9896 9897 9898 9899 9900 9901 9902 9903
pub fn deser_structure_crate_model_reserved_cache_nodes_offering(
decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::ReservedCacheNodesOffering, aws_smithy_xml::decode::XmlDecodeError> {
#[allow(unused_mut)]
let mut builder = crate::model::ReservedCacheNodesOffering::builder();
while let Some(mut tag) = decoder.next_tag() {
match tag.start_el() {
s if s.matches("ReservedCacheNodesOfferingId") /* ReservedCacheNodesOfferingId com.amazonaws.elasticache#ReservedCacheNodesOffering$ReservedCacheNodesOfferingId */ => {
let var_388 =
Some(
Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
.into()
)
?
)
;
builder = builder.set_reserved_cache_nodes_offering_id(var_388);
}
,
s if s.matches("CacheNodeType") /* CacheNodeType com.amazonaws.elasticache#ReservedCacheNodesOffering$CacheNodeType */ => {
let var_389 =
Some(
Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
.into()
)
?
)
;
builder = builder.set_cache_node_type(var_389);
}
,
s if s.matches("Duration") /* Duration com.amazonaws.elasticache#ReservedCacheNodesOffering$Duration */ => {
let var_390 =
Some(
{
<i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
)
.map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.elasticache#Integer`)"))
}
?
)
;
builder = builder.set_duration(var_390);
}
,
s if s.matches("FixedPrice") /* FixedPrice com.amazonaws.elasticache#ReservedCacheNodesOffering$FixedPrice */ => {
let var_391 =
Some(
{
<f64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
)
.map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (double: `com.amazonaws.elasticache#Double`)"))
}
?
)
;
builder = builder.set_fixed_price(var_391);
}
,
s if s.matches("UsagePrice") /* UsagePrice com.amazonaws.elasticache#ReservedCacheNodesOffering$UsagePrice */ => {
let var_392 =
Some(
{
<f64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
)
.map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (double: `com.amazonaws.elasticache#Double`)"))
}
?
)
;
builder = builder.set_usage_price(var_392);
}
,
s if s.matches("ProductDescription") /* ProductDescription com.amazonaws.elasticache#ReservedCacheNodesOffering$ProductDescription */ => {
let var_393 =
Some(
Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
.into()
)
?
)
;
builder = builder.set_product_description(var_393);
}
,
s if s.matches("OfferingType") /* OfferingType com.amazonaws.elasticache#ReservedCacheNodesOffering$OfferingType */ => {
let var_394 =
Some(
Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
.into()
)
?
)
;
builder = builder.set_offering_type(var_394);
}
,
s if s.matches("RecurringCharges") /* RecurringCharges com.amazonaws.elasticache#ReservedCacheNodesOffering$RecurringCharges */ => {
let var_395 =
Some(
crate::xml_deser::deser_list_com_amazonaws_elasticache_recurring_charge_list(&mut tag)
?
)
;
builder = builder.set_recurring_charges(var_395);
}
,
_ => {}
}
}
Ok(builder.build())
}
Trait Implementations§
source§impl Clone for ReservedCacheNodesOffering
impl Clone for ReservedCacheNodesOffering
source§fn clone(&self) -> ReservedCacheNodesOffering
fn clone(&self) -> ReservedCacheNodesOffering
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more