Interface ApplicationTargetGroupProps

All Superinterfaces:
BaseTargetGroupProps, software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
ApplicationTargetGroupProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:44.213Z") @Stability(Stable) public interface ApplicationTargetGroupProps extends software.amazon.jsii.JsiiSerializable, BaseTargetGroupProps
Properties for defining an Application Target Group.

Example:

 Vpc vpc;
 // Target group with duration-based stickiness with load-balancer generated cookie
 ApplicationTargetGroup tg1 = ApplicationTargetGroup.Builder.create(this, "TG1")
         .targetType(TargetType.INSTANCE)
         .port(80)
         .stickinessCookieDuration(Duration.minutes(5))
         .vpc(vpc)
         .build();
 // Target group with application-based stickiness
 ApplicationTargetGroup tg2 = ApplicationTargetGroup.Builder.create(this, "TG2")
         .targetType(TargetType.INSTANCE)
         .port(80)
         .stickinessCookieDuration(Duration.minutes(5))
         .stickinessCookieName("MyDeliciousCookie")
         .vpc(vpc)
         .build();
 
  • Method Details

    • getLoadBalancingAlgorithmType

      @Stability(Stable) @Nullable default TargetGroupLoadBalancingAlgorithmType getLoadBalancingAlgorithmType()
      The load balancing algorithm to select targets for routing requests.

      Default: TargetGroupLoadBalancingAlgorithmType.ROUND_ROBIN

    • getPort

      @Stability(Stable) @Nullable default Number getPort()
      The port on which the listener listens for requests.

      Default: - Determined from protocol if known, optional for Lambda targets.

    • getProtocol

      @Stability(Stable) @Nullable default ApplicationProtocol getProtocol()
      The protocol to use.

      Default: - Determined from port if known, optional for Lambda targets.

    • getProtocolVersion

      @Stability(Stable) @Nullable default ApplicationProtocolVersion getProtocolVersion()
      The protocol version to use.

      Default: ApplicationProtocolVersion.HTTP1

    • getSlowStart

      @Stability(Stable) @Nullable default Duration getSlowStart()
      The time period during which the load balancer sends a newly registered target a linearly increasing share of the traffic to the target group.

      The range is 30-900 seconds (15 minutes).

      Default: 0

    • getStickinessCookieDuration

      @Stability(Stable) @Nullable default Duration getStickinessCookieDuration()
      The stickiness cookie expiration period.

      Setting this value enables load balancer stickiness.

      After this period, the cookie is considered stale. The minimum value is 1 second and the maximum value is 7 days (604800 seconds).

      Default: Duration.days(1)

    • getStickinessCookieName

      @Stability(Stable) @Nullable default String getStickinessCookieName()
      The name of an application-based stickiness cookie.

      Names that start with the following prefixes are not allowed: AWSALB, AWSALBAPP, and AWSALBTG; they're reserved for use by the load balancer.

      Note: stickinessCookieName parameter depends on the presence of stickinessCookieDuration parameter. If stickinessCookieDuration is not set, stickinessCookieName will be omitted.

      Default: - If `stickinessCookieDuration` is set, a load-balancer generated cookie is used. Otherwise, no stickiness is defined.

      See Also:
    • getTargets

      @Stability(Stable) @Nullable default List<IApplicationLoadBalancerTarget> getTargets()
      The targets to add to this target group.

      Can be Instance, IPAddress, or any self-registering load balancing target. If you use either Instance or IPAddress as targets, all target must be of the same type.

      Default: - No targets.

    • builder

      @Stability(Stable) static ApplicationTargetGroupProps.Builder builder()
      Returns:
      a ApplicationTargetGroupProps.Builder of ApplicationTargetGroupProps