Architecture 针对我的情况推荐最佳方法(多租户与有abp的单租户)
我正在为一种计费应用程序建模,它涉及系统中的3个主要角色:保险人、医疗提供商和分析师。我选择aspnetboilerplate应用程序框架来构建我的解决方案。我试图从我的限制中选择单一与多租户Architecture 针对我的情况推荐最佳方法(多租户与有abp的单租户),architecture,domain-driven-design,aspnetboilerplate,Architecture,Domain Driven Design,Aspnetboilerplate,我正在为一种计费应用程序建模,它涉及系统中的3个主要角色:保险人、医疗提供商和分析师。我选择aspnetboilerplate应用程序框架来构建我的解决方案。我试图从我的限制中选择单一与多租户 医疗提供者,需要登记患者,其他提供者看不到 医疗提供商,拥有一个经理帐户,由整个系统的经理创建,但可以在其“租户”下创建其他用户 电子邮件作为用户名,在整个系统中应该是唯一的,而不是每个医疗提供者 保险公司,在其自己的门户上审查医疗提供商的医疗索赔 分析员在保险公司面前审计索赔 管理员用户创建管理员医疗提
在这种情况下,多租户方法是最好的,还是单租户在使用aspnetboilerplate时更适合这种情况?根据这些要求,您应该采用Abp多租户方法。在Abp中,当您使用界面时,Abp可以根据登录用户的租户自动筛选您的查询响应
public class Product : Entity, IMustHaveTenant
{
public int TenantId { get; set; }
public string Name { get; set; }
//...other properties
}
这样,ASP.NET样板就知道这是特定于租户的
实体和自动将租户的实体与其他实体隔离开来
租户
你可以从他们那里得到更多的信息
什么是多租户?
“软件多租户是指一种软件体系结构,其中
软件的单个实例在服务器上运行,并为多个服务器提供服务
租户。租户是一组与共享公共访问权限的用户
软件实例的特定权限。具有多租户
体系结构,软件应用程序旨在提供
租户拥有实例的专用共享,包括其数据,
配置、用户管理、租户个人功能和
非功能属性。多租户与多实例形成对比
体系结构,其中独立的软件实例代表
不同的租户”(维基百科)
主机对租户
我们定义了多租户系统中使用的两个术语:
租户:拥有自己用户、角色、权限的客户,
设置。。。并使用与其他应用程序完全隔离的应用程序
租户。多租户应用程序将有一个或多个租户。如果
这是一个CRM应用程序,不同的租户也有自己的
客户、联系人、产品和订单。所以当我们说“房客”
“用户”,我们指的是租户拥有的用户
主机:主机是单例的
(只有一台主机)。主机负责创建和更新
管理租户。“主机用户”处于更高级别且独立
来自所有租户,并且可以控制他们
这不是一个问题。这是业务需求。您应该进行研究,尝试做一些事情,然后如果您有任何特定的代码问题,您可以询问。但代码在哪里?我没有看到任何。我关心的是,在ABP中选择什么,因为如果我们使用租户,会有很多限制,但如果不使用它,也会失去很多功能。有人推荐什么,我已经知道如何实现这些特性,这只是基于框架的良好使用选择什么的问题。