The @supports at-rule in CSS allows you to specify CSS declarations that depend on a browser's support for CSS features. This is commonly known as a feature query, and it allows you to write styles that are only applied if... Read What Is @supports In CSS
SaaS multi-tenant isolation mode
For the SaaS model, resource isolation between multiple tenants is a very basic capability. For cost and operational efficiency considerations, SaaS service providers need to build an environment where multiple tenants can access the software at the same time. Although different tenants access the same set of SaaS product services, the resource Access needs to be strictly isolated.
SaaS resource isolation consists of several levels:
The multi-tenant architecture mainly solves the isolation problem of the first layer, that is, the isolation of computing, storage, network, and other resources. In order to realize the multi-tenant isolation architecture, we must first figure out several common multi-tenant isolation modes.
Shaft Isolation Mode
Some SaaS service providers choose the silo isolation mode, that is, each tenant runs in an isolated set of resources. Some people will say, isn't this the traditional software model, why is it the SaaS model? But if these silo resources have standardized tenant identification, occupancy process, billing system, deployment process, and operation process, it is still a SaaS model, but each customer has a set of end-to-end infrastructure.
It is believed that many SaaS service providers will give priority to the sharing model, that is, multi-tenants share a set of infrastructure resources, which can make SaaS software services more efficient, agile, and low-cost.
Domain isolation mode
Traditional large enterprises prefer the traditional model of private deployment and personalized delivery because they need stronger control and higher security. However, SMEs have limited payment capabilities and tend to have more standardized needs, so they prefer SaaS products with lower prices and easier ordering. In order to meet the needs of different customers, there is also a mode that mixes the silo model and the shared model, that is, the domain isolation mode.
In this mode, the basic domain and dedicated domain are subdivided. The basic domain uses a shared model, and all tenants share a set of resources; while the dedicated domain uses a silo model, and each tenant has an independent resource environment.
Most small and medium-sized customers, use SaaS products in the basic domain environment, and only a small number of large customers use SaaS products in dedicated domains. Usually, they have strong payment capabilities and strong isolation requirements.
However, it should be noted that in order to avoid multiple product versions, SaaS service providers need to ensure that the product versions of the basic domain and dedicated domain are consistent, and the personalized part should build a PaaS platform as much as possible and let ISVs participate in the construction. Otherwise, once the standardization of SaaS products is reduced, the maintenance of subsequent versions will become a disaster.
Positioning for multi-tenant systems
After understanding the various multi-tenant isolation modes, let's summarize the positioning of the multi-tenant system. The multi-tenant system is to satisfy multiple users to use a set of products and to realize data and behavioral isolation between users. However, according to different user needs, software and hardware resources can be shared or isolated, and the system architecture can flexibly support multiple isolation modes.
Capabilities required for a multi-tenant system
Multitenancy Conceptual Model
Multi-tenancy Core Concepts
Conceptual model design
Multi-tenant core scenario
Tenant Internal Model Relationships
For SaaS products, tenants are the top-level concept. Tenants have internal models such as organizations, users, product capabilities, and cloud resources. Tenants are like renting a big house, and other models are furniture or facilities inside the house.
In various isolation modes, it is very important to identify the identity of the tenant and obtain the resource configuration of the tenant. When a user logs in to the SaaS system, the system returns tenant context information, which includes the tenant information bound to the user and the isolation mode. Tenant context information will be attached to each system interaction, running through the entire system call link, so that the upstream caller knows which downstream resources to route to.
Tenant Billing Metering Management
In the silo isolation mode, since the resources themselves are isolated, billing and metering can be done based on the occupied computing, storage, and network resources, and the logic is relatively simple. In the shared mode, billing and metering are more complicated. We need to be able to accurately collect the usage of actual resources by each tenant. Generally, combined billing will be performed based on data such as concurrent requests, storage capacity, and a number of data objects.
Traditional software model VS SaaS model Traditional software projects generally refer to developing a specific software system for customers and deploying it in an independent environment, usually the internal envir...
When mentioning control binding data in C#, most people first think of WPF. In fact, Winform also supports the binding of controls and data. Data binding in Winform can be divided into the following types according to the ...