Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Multi-tenancy targets to share the same Blueriq solution among multiple tenants. You would typically use this when you create a Software-as-a-Service solution, where you as a service provider are in control over the infrastructure and the model.

One important aspect in a multi-tenant is data separation. Persistent data for one tenant should under no circumstances be shared with other tenants. The image below lists strategies on how a multi-tenant system can be set up. Blueriq doesn't support the third strategy. When you are creating the architecture for your multi-tenant solution, you should consider the trade-offs that each strategy has.

Multi-tenancy DegreesImage Added

(minus) Onboarding a new tenant means setting up a new system(plus) Only one runtime to manageNot supported by Blueriq
(plus) Least chance for mixing up data(minus) Tenant data ends up in the same system, so there's a chance data gets mixed up
(minus) Each system needs maintenance separately(plus) Only one runtime to  maintain
(plus) Maintenance can be performed without other tenants noticing(minus) Maintenance on the runtime affects all tenants
(plus) Easier to scale a single tenant(minus) When the system needs to scale, you need to scale the entire system
(plus) Resources can be allocated per tenant. Easier to prevent noisy neighbors.(minus) If the system experiences a sudden burst in activity, all tenants will notice this.

We expect the solution architect to consider the characteristics of each strategy and choose what suits best. For example, if you run on a container platform, the first solution may be more feasible, while when you run on VMs, the second strategy may be easier. Aspects that you may want to consider are operating costs, maintainability, data separation, availability, elasticity, flexibility and scalability.

Why use multi-tenancy?

  • Multiple customers use the same service
    • Resource sharing
    • Build once, sell multiple times

...

  • When your services should differ for each tenant
    • More diversity between tenants leads to higher costs in development and maintenance, and hosting.

System requirements

Generally, a multi-tenant system can accommodate the same amount of simultaneous users as the same system that is single tenant.

Note that because the system has to manage data sources for each tenant, this will cause some overhead that is not present on a single tenant system. It is a good practice to monitor your system's performance and scale as needed.The system that you require for your multi-tenant solution is