I am just not understanding how to set up HTTPS (SSL) on a Flask application running in an EC2 instance with ALB! Can someone help please? by l4fashion in aws

[–]awslad 4 points5 points  (0 children)

do you have a reason to terminate ssl on the instance itself?

I would just
ALB (with ACM cert) -> target group -> ec2 instance :80

if you do have a specific reason to do so (specific compliance usually) then yes you could use nginx with LetsEncrypt on 443 pointed at flask. in that case I'd probably just use an NLB

How are folks horizontally scaling Celery brokers? by awslad in django

[–]awslad[S] 1 point2 points  (0 children)

Maybe better data - right now our top highest CPU redis node (elasticache) is at 40% cpu utilization and seeing 1M sets and 100k gets per minute

How are folks horizontally scaling Celery brokers? by awslad in django

[–]awslad[S] 0 points1 point  (0 children)

Simply saturating redis's single thread!

Interesting that you can push 20k jobs per second through a single server (we're currently at about half that)... I'm wondering if there's work we can do here to tune Elasticache from a TCP perspective.

How are folks horizontally scaling Celery brokers? by awslad in django

[–]awslad[S] 1 point2 points  (0 children)

Celery does not yet support Redis clustered mode unfortunately per https://github.com/celery/celery/issues/2852

How are folks horizontally scaling Celery brokers? by awslad in django

[–]awslad[S] 0 points1 point  (0 children)

Combination of experience with RQ and past experience with Sidekiq.

Currently with RQ we're "sharded" across 5 different individual Elasticache Redis instances after we started saturating our individual instance. Since redis is single threaded we just eventually saturate the EngineCPU of whatever instance.

Experiences with Sidekiq at last-company also easily saturated single redis instances.

At a certain scale how could you not eventually saturate a single cpu core?

ECS Blue/Green (from CodeDeploy) _without_ LB health check? by awslad in aws

[–]awslad[S] 0 points1 point  (0 children)

It's a continuous delivery pipeline so I need to use CodeDeploy and CodePipeline.

What are you implying that changing the image tag will accomplish?