This large Benefit Fund was building their first enterprise level application for deployment in the Azure Cloud. They need help designing and implementing an architecture which would take full advantage of everything Azure Cloud has to offer, while remaining secure and performant. Due to our unique understanding of both cloud architecture and software development, they partnered with Winmill to ensure their success.
Winmill was asked to design and implement a reusable architecture that leveraged cloud-native components and was tailored to live in the Azure Cloud. The architecture had to be secure and scalable. The design had to be reusable. The implementation needed to be compatible with native Azure DevOps tools. The cloud infrastructure could not require any 3rd party tools to support it. And finally, every architectural component had to be native to Azure Cloud.
We decided on a microservice architecture using .NET Core and .NET Standard to take advantage of Azure’s ability to provide small, scalable and cost-effective microenvironments. This also gave us the ability to deploy services to serverless hosts whenever possible. If a given service did not need a persistent runtime environment, then it could be deployed to a managed instance requiring no operating system (and hence, no OS maintenance or cost).
In addition to providing a secure Web API to support front-end development, each microservice was also designed to communicate using the Azure Service Bus, ensuring interoperability and security. The ASB is an Azure managed service which provides a secure, reliable, scalable messaging platform that requires no additional support infrastructure. The backend service code was also written for and deployed to Azure web and function apps, in order to allow easy integration with native Azure DevOps build and release pipelines; this ensured that the CI/CD was easy to setup and maintain. The web UI was designed to be static so that it could be hosted in serverless storage blobs with Azure CDNs to distribute their content to geolocated edge servers. All of this ensured an easy-to-maintain, scalable and secure cloud hosting environment for the front end. Back end services were secured using an application gateway which limited traffic to only trusted Azure components. The entire architecture was captured as infrastructure-as-code templates for reuse in later projects.
Winmill built a native Azure architecture for this client that is secure, scalable, and reusable. The implementation was less expensive than traditional server-based development and hosting, while still exceeding performance and reliability SLAs. By ensuring that the code was compatible with native DevOps tools, microservices and serverless environments, Winmill was able to keep costs low and deployments continuous and rapid. This implementation was so successful that it is being used as the standard Azure Cloud architecture for all new enterprise level projects at this organization.
This implementation was so successful that it is being used as the standard Azure Cloud architecture for all new enterprise level projects at this organization.