A multi-tenant delivery model for ISV’s utilizes software running on shared infrastructure in the cloud to support individual ISV end-customers (tenants).
The customer data is typically stored in a set of shared tables and all application layers are aware of a customer's unique identifier. The application itself is designed to be multi-client aware. The application is typically also responsible for the management of user permissions and access. In addition, the infrastructure also needs to be categorized into server groups based on the number of customers, transactions, and regulations that need to be supported.
A multi-tenant model brings advantages to the ISV (Independent Software Vendor). There are many efficiencies gained when utilizing the economies of scale provided in a multi-tenant model. As the server group composition is well-known there are efficiencies gained in infrastructure management and monitoring. Launching a new service area is as simple as executing infrastructure automation and then deploying the application. The common set of infrastructure also provides a unified ‘single plane of glass' for monitoring.
Customers being hosted on common compute, storage, and database makes for a simpler application deployment strategy. ISVs utilizing this model will typically have a single code base which makes for easier deployment of updates across the customer base. Many ISVs utilizing this model allow customers to opt-in to new features with the utilization of feature flags.
Of course, all these benefits may come with a few challenges. Supporting customers that have specific data residency requirements entails a regional deployment strategy and there may be scenarios wherein customers have business requirements of not being housed in the same servers as a competitor. Depending on the architecture of the application the clients may be subjected to the noisy neighbor scenario. When a server group becomes saturated the ISV needs to decide to either migrate the customer to a newer lesser utilized server group or to expand the capacity of the existing group.
One of the unintended consequences of properly supporting the multi-tenant model is that your application architecture needs to be well thought out and planned at a higher level than in a single-tenant architecture. Proper access controls and data segregation models need to be architected into the application framework from the beginning and ISVs need to ensure they have the in-house engineering skills to accomplish all of this.
ISVHost can help to bridge the gap by involving our cloud experts to help advise on modernizing your application and tweaking it for cloud success. Our experts work with other ISVs across the spectrum and can bring experience working with similar problems and best practices to your cloud transformation. Contact our team to discuss what a transformation could look like for you.