Pre-loader

Building Scalable Systems on a Budget

Leveraging Storage Queues and Container Service in Azure for Startup Success

Most startups are operating under tight budget constraints, the challenge of building scalable and resilient systems can seem like a pipe dream. However, using Azure it's possible to build a scalable, strategic, and future proof solution on a budget through the combination of Storage Queues and Container Service. 

Message Queues

Message queues are essential components in modern flexible systems due to their ability to enhance system resilience, scalability, and fault tolerance. They can help to facilitate load balancing by distributing tasks among multiple consumers and different parts of a system can evolve independently while maintaining efficient communication. 

Azure Storage Queues stand out as the perfect choice for startups in their initial phases of development. Using file storage rather than a server, just pop in a connection string and you can start reading and writing to them, no server costs, no maintenance burden and when your traffic has outgrown them, really simple to swap out to a more robust and performant platform such as RabbitMQ, SQS or ServiceBus.

At just $0.077 per 10,000 messages its very cost efficient and a system we maintain writes and processes about 1.5 million message per day for a cost of about $15/month

Containers

Containers, such as Docker, are an increasingly common way to run systems, The isolation, consistency, portability and efficiency of containerising discrete smaller systems in your overall system architecture mean that they are a great way to start building a micro services architecture or even to do some of the heavy lifting for parts on a monolith.

In an ideal world bringing together these things into a self-healing and scaling container orchestration platform is a no brainer, but skills in DevOps are expensive and in the early days of a start up you are unlikely to need to scale in a way that can’t be managed manually.
This is where Azure Container Instances can come to the rescue, you can still build your systems to run in containers but deploy them individually in container instances with none of the overhead of managing the infrastructure. 

Small container instances start at about $30/month to run depending on the number of logical processors and memory footprint.

Summary

By combining Storage Queues and Container Instances in Azure, we can build a system capable of processing millions of messages a day all for less than a $100/month. When the limits of the technologies involved are reached, we are just a few days development work from being able to move to move to systems capable of processing billions of records a day.

At Track Metrics we understand the need to keep costs down and will always steer our customers down a cautious route when it comes to tech investment. However, by thinking ahead and picking the right technologies we can maintain resilience, scalability and minimise the amount of redevelopment necessary when you hit the big time.