Class ExpressGatewayScalingTarget

java.lang.Object
software.amazon.awssdk.services.ecs.model.ExpressGatewayScalingTarget
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<ExpressGatewayScalingTarget.Builder,ExpressGatewayScalingTarget>

@Generated("software.amazon.awssdk:codegen") public final class ExpressGatewayScalingTarget extends Object implements SdkPojo, Serializable, ToCopyableBuilder<ExpressGatewayScalingTarget.Builder,ExpressGatewayScalingTarget>

Defines the auto-scaling configuration for an Express service. This determines how the service automatically adjusts the number of running tasks based on demand metrics such as CPU utilization, memory utilization, or request count per target.

Auto-scaling helps ensure your application can handle varying levels of traffic while optimizing costs by scaling down during low-demand periods. You can specify the minimum and maximum number of tasks, the scaling metric, and the target value for that metric.

See Also:
  • Method Details

    • minTaskCount

      public final Integer minTaskCount()

      The minimum number of tasks to run in the Express service.

      Returns:
      The minimum number of tasks to run in the Express service.
    • maxTaskCount

      public final Integer maxTaskCount()

      The maximum number of tasks to run in the Express service.

      Returns:
      The maximum number of tasks to run in the Express service.
    • autoScalingMetric

      public final ExpressGatewayServiceScalingMetric autoScalingMetric()

      The metric used for auto-scaling decisions. The default metric used for an Express service is CPUUtilization.

      If the service returns an enum value that is not available in the current SDK version, autoScalingMetric will return ExpressGatewayServiceScalingMetric.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from autoScalingMetricAsString().

      Returns:
      The metric used for auto-scaling decisions. The default metric used for an Express service is CPUUtilization.
      See Also:
    • autoScalingMetricAsString

      public final String autoScalingMetricAsString()

      The metric used for auto-scaling decisions. The default metric used for an Express service is CPUUtilization.

      If the service returns an enum value that is not available in the current SDK version, autoScalingMetric will return ExpressGatewayServiceScalingMetric.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from autoScalingMetricAsString().

      Returns:
      The metric used for auto-scaling decisions. The default metric used for an Express service is CPUUtilization.
      See Also:
    • autoScalingTargetValue

      public final Integer autoScalingTargetValue()

      The target value for the auto-scaling metric. The default value for an Express service is 60.

      Returns:
      The target value for the auto-scaling metric. The default value for an Express service is 60.
    • toBuilder

      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<ExpressGatewayScalingTarget.Builder,ExpressGatewayScalingTarget>
      Returns:
      a builder for type T
    • builder

      public static ExpressGatewayScalingTarget.Builder builder()
    • serializableBuilderClass

      public static Class<? extends ExpressGatewayScalingTarget.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.