package awsapplicationautoscaling // Properties for enabling Application Auto Scaling. // // Example: // var cluster cluster // // loadBalancedFargateService := ecsPatterns.NewApplicationLoadBalancedFargateService(this, jsii.String("Service"), &ApplicationLoadBalancedFargateServiceProps{ // Cluster: Cluster, // MemoryLimitMiB: jsii.Number(1024), // DesiredCount: jsii.Number(1), // Cpu: jsii.Number(512), // TaskImageOptions: &ApplicationLoadBalancedTaskImageOptions{ // Image: ecs.ContainerImage_FromRegistry(jsii.String("amazon/amazon-ecs-sample")), // }, // }) // // scalableTarget := loadBalancedFargateService.Service.AutoScaleTaskCount(&EnableScalingProps{ // MinCapacity: jsii.Number(1), // MaxCapacity: jsii.Number(20), // }) // // scalableTarget.ScaleOnCpuUtilization(jsii.String("CpuScaling"), &CpuUtilizationScalingProps{ // TargetUtilizationPercent: jsii.Number(50), // }) // // scalableTarget.ScaleOnMemoryUtilization(jsii.String("MemoryScaling"), &MemoryUtilizationScalingProps{ // TargetUtilizationPercent: jsii.Number(50), // }) // type EnableScalingProps struct { // Maximum capacity to scale to. MaxCapacity *float64 `field:"required" json:"maxCapacity" yaml:"maxCapacity"` // Minimum capacity to scale to. MinCapacity *float64 `field:"optional" json:"minCapacity" yaml:"minCapacity"` }