Reference Architecture: Deploying WSO2 API Manager on Microsoft Azure

Introduction

WSO2 is a 15+ years old software engineering organization that provides a set of Open Source products/platforms for API Management, Enterprise Integration, and Identity and Access Management.

Meeting current industry demands, all the WSO2 product can be deployed on any of the below infrastructure choices:

Revolutionizing the Product Update With WSO2 Update 2.0

Every software application undergoes various changes over time and as a result, we get patches/ hotfixes, updates, and new version releases. Those changes can be either architectural/ technical changes to suit the current technology landscape or functional changes to meet end-users’ demanding needs. An update or a new release of a software application can consist of either of those changes or maybe both.

Software applications that do not meet time to market when releasing updates and new versions and take a long time to release updates or new versions become obsolete. They vanish into thin air without a trace. That’s why giants like Microsoft have reduced their major release cycle from 4 years to 3 years and also provide major Updates to the current release bi-annually so that the end-users are up-to-date and on track. Not only new releases and updates, but they also have to provide patches/ hotfixes for identified bugs/ vulnerabilities in order to stay competitive in the game.

API Versioning

Versioning is the term what computer software industry folks use. But the general/ equivalent term (at least as I believe) is the Evolution.

Evolution is something that we all go through and it’s applicable for every single object in this world.

The Service Mesh in the Microservices World

The software industry has come a long journey and throughout this journey, Software Architecture has evolved a lot. Starting with 1-tier (Single-node), 2-tier (Client/ Server), 3-tier, and Distributed are some of the Software Architectural patterns we saw in this journey.

The Problem

The majority of software companies are moving from Monolithic architecture to Microservices architecture, and Microservices architecture is taking over the software industry day-by-day. While monolithic architecture has many benefits, it also has so many shortcomings when catering to modern software development needs. With those shortcomings of monolithic architecture, it is very difficult to meet the demand of the modern-world software requirements and as a result, microservices architecture is taking control of the software development aggressively. The Microservices architecture enables us to deploy our applications more frequently, independently, and reliably meeting modern-day software application development requirements.