Flask, Streamlit or another alternative

I have successfully created a Streamlit app which has saved time greatly in one of our routine processes and I want to deploy it to AWS Fargate for all of our engineers to use. It was my first 300-line project and I do not have experience in deployment or web-application development, but I am willing to learn hence I want to make sure if I should invest time in Streamlit or alternatives.

Our Dev-Ops asks for the following requirements, can you please elaborate if Streamlit can check all these boxes, or I better off with another solution, for now, I have to spend a good amount of time this morning going through the discussions on sessions, etc, but I do not think all of the below are supported out of the box:

  • Session isolation
  • Maintainability
  • Deployment automation (AWS SAM/CloudFormation, Terraform, or similar)
  • High availability (HA) – Fargate supports “services” to run multiple Docker containers for fault tolerance and HA
  • Scaling – Fargate supports autoscaling policies to scale-in and scale-out based on load
  • Disaster recovery (DR) – since data will be transiently stored, this is less of a concern

Thanks

Hi @aedalat,

I can check some of those. I’ve deployed several personal Streamlit apps using Fargate. See www.notreadable.com for example.

  • Session Isolation: I think this is possible, but can’t confirm for sure.
  • Maintainability: Yes, Streamlit Apps are incredibly maintainable (it’s just a python script really)
  • Deployment automation: Yes, in general, but that depends on the specifics of your infrastructure.
  • High Availability: Yes, for example, I have my app behind a publicly accessible load balancer that can handle quite a bit of traffic at low monthly rates.
  • Scaling: Same as above
  • DR: You answered that one :grinning:
2 Likes

Thanks Chad, Appreciate you sharing the experience.

I will continue my search for session isolation, I can see there are some work around and procedures on the forum, but haven’t found something conclusive as of yet.

1 Like