Search code examples
load-balancingscalabilitypaasappscale

Requirement to develop scalable web application


We're planning to develop a web based Healthcare Practice Management System. Due to HIPAA we're requested to deploy the app in our own premises. Our company is relatively small currently we have only software engineers and no devops engineers but still we want to develop the application to support horizontal scaling(adding more servers).

Planned to use:

  • Python3 (Django)
  • PostgreSQL

I'm looking for something like AppScale but with the freedom of choosing our own runtime, database and frameworks.

In other words from the software engineer's perspective:

  • Should provide an easy way to deploy django application
  • Should have web based dashboard to monitor and control(like AppScale)
  • Should make load balancing simple (app and database)

Solution

  • I chose Kubernetes which is a container orchestration technology specifically designed for Docker and also found that scaling is not just the responsibility of platform that the app is deployed on but also its depends on how the app is designed and coded. For that The Twelve-Factor App methodology is really helpful.

    But I can't deploy database on Kubernetes because its not recommended by Kelsey Hightower(author of Kubernetes Up and Running) in his talk. So, for now I chose to deploy my database on a VM.