Tenancy Made Easy With Convergence
Introduction: The Tipping Point in SaaS Deployments
According to the Boston Consulting Group, companies of >$100M in value are less likely to buy Multi-Tenant SaaS software. Additionally, they found that 74% of the companies that responded were likely to desire a split plane or private SaaS solution. Based on BCG’s findings and Prodvana’s industry interviews, these tenancy solutions are becoming the industry's dominant architectural patterns for B2B software.
We will start by exploring the power of these architectures. Then, we will discuss how convergence-based deployment systems minimize the operational overhead of maintaining and deploying these architectures.
The pendulum is swinging from fully optimizing for overhead to a balance of customer needs and operational overhead.
The Power of Single-Tenant Architecture
Single-tenant architectures, which can be built in a variety of ways, offer key customer advantages over multi-tenant deployments.
Each customer’s data is stored separately, reducing the risk of data leakage between tenants.
Because each tenant has a separate instance, unique customizations and configurations per customer are possible without impacting other customers. One example is version skew, where customers can run different versions of the platform.
The single-tenant architecture eliminates the “noisy neighbor” problem, where performance can be degraded due to the activity of another tenant on a shared instance.
Prodvana’s Convergence-Based Deployments: The Next Frontier in SaaS Deployments
Prodvana’s convergence-based deployment engine easily handles single and multi-tenant deployments in the same system.
Internally, convergence-based deployments use a different data model from the traditional pipelines. Instead of following steps to reach the desired state, convergence-based systems continually adjust toward the desired state based on real-time feedback. This fundamental difference is what allows more mature and sophisticated production workflows. We discussed our technical implementation in an earlier blog post.
When you use pipelines, a rollback means reverting the entire system. This impacts all customers, regardless of whether the issue impacts their deployment. The following shows a pipeline that is progressing through to enterprise customers. The first enterprise deployment fails and causes the entire pipeline to roll back.
However, Prodvana takes a different approach. When a deployment issue arises, it supports rollbacks that affect only the problematic tenant.
In the following graphic, v1 is being upgraded to v2 across multiple tenant environments, and an issue arises with just one. With Prodvana, you roll back the affected tenant to the previous stable version allowing others to continue enjoying the new feature. This level of granularity in managing deployments is not possible with traditional pipeline-based deployments.
With localized rollbacks, you can address these issues effectively without causing unnecessary interruptions to other tenants. Prodvana’s approach brings a new level of resilience to your deployment process, making it more robust in the face of issues and minimizing the potential impact on your customers.
Traditionally, deployments follow a linear approach: one must complete before the next begins. However, waiting for one deployment to finish before starting another in a fast-paced development environment can significantly slow the deployment process.
Prodvana removes this limitation. It allows long-running deployments to overlap, meaning a new deployment can begin even if the previous one hasn’t been fully completed. The animation below is a simple example of how overlapping deployments can work:
Overlapping deployments are beneficial when deploying updates to large single-tenant systems where deployments can take a substantial amount of time.
Imagine a scenario where you’re deploying an update to a large tenant, and a critical bug fix becomes ready for deployment. With traditional deployment models, you would have to wait for the current update to complete before deploying the bug fix. However, with Prodvana, you can start deploying the bug fix immediately, ensuring that the critical update reaches other tenants as quickly as possible.
The ability to handle overlapping deployments speeds up the overall deployment process and makes it more agile and responsive. You can react faster to emerging needs, whether it’s a critical bug fix or an essential feature update. By reducing the time between deployments, Prodvana allows you to deliver updates to your customers faster and more efficiently, enhancing their overall experience and trust in your service.
Tenant-Specific Environment Rules
Prodvana’s support for tenant-specific environment rules, such as version pinning, lets you move quickly for your customers and increase value for them.
Let's consider version pinning, a feature that is often requested by enterprises that have processes for validation on a regular basis. Without Prodvana, this becomes a brutal internal debate around the value of the customer's contract. Sales teams get pitted against engineering and vigorously debate if engineering even understands enterprise customers.
With Prodvana, you can set specific tenants to run on particular software versions in declarative ways via UI and configuration files. This can be crucial for clients who need to maintain compatibility with specific systems or who wish to test new features in a controlled environment before rolling them out entirely.
This tenant-specific flexibility is a significant advantage. You can now cater to each customer's individual needs, driving value. In contrast, traditional pipeline-based deployments struggle to offer this level of customization due to their linear and global nature.
Bringing it all together
Version pinning and overlapping deployments can work together to showcase even more value.
An example scenario that illustrates their combined advantage:
You’re rolling out a V2 update of your software. However, some of your tenants prefer to stick with V1 due to specific integrations or features they rely on. With version pinning, these tenants can stay on the older version.
Wait! While this long-running deployment of the major update is still in progress, you also have a critical security patch that needs to go out immediately.
By using overlapping deployments, you can start the update immediately. The tenants that chose to stay on V1 will get the security hot-fix, and when the major update completes, the tenants that went to V2 will pick up the V2 hot-fix.
This is possible because Prodvana treats each deployment as an independent operation aiming to converge the system to a defined desired state.
Therefore, even if two deployments overlap, each will independently ensure the system reaches the correct state for its specific deployment.
The wins are twofold: you’re not scrambling to release the patch, and your customers get what they desire.
The combination of these features gives you massive power.
When you use Prodvana, you can have the best of both worlds. Engineering is able to maintain low overhead, and sales teams get additional levers to close. The power of convergence isn’t limited to just this tenancy use case. Prodvana can act as a control plane for distribution for enterprise users.
We’ll be showcasing how convergence helps with regional expansion, edge deployments, and many other cases where isolation or fragmentation occurs in future blog posts.
Subscribe to see how easy deployments can be.