OFBi和多租户是什么

什么是多租户?

    多租户指的是软件体系结构中的一个原则,即在一台服务器上运行一个单独的软件实例,服务于多个客户组织(租户)。多租户与多实例相对立,后者指的是单独的软件实例(或硬件系统)为不同的客户组织提供服务。在多租户体系结构中,一个软件应用程序的设计是对数据和配置进行虚拟的分区,每一个客户组织使用一个定制的虚拟应用实例。多租户也被视为云计算的本质属性之一。

    云计算是技术的一种营销术语,提供计算、软件、数据访问和存储服务,终端用户无需知道提供服务的系统的具体物理位置和配置。

    云计算为基于互联网协议的IT服务描绘了一种新的扩充、消费和交付模式,它通常涉及到提供动态可扩展的和可视化的资源。它是由互联网提供的易于访问远程计算机的一个副产品。这可能表现为网络工具的形式,或者是一种用户可通过网络浏览器进行访问和使用的形式好像程序安装在本机上一样。

    OFBiz支持的多租户

    多租户在OFBiz转927271中引入。多租户是从OFBiz的单一副本运行单独的数据实例(租户)的能力。每个数据实例保存在指定给租户的一个单独的数据库中。用户通过登录表单的形式指定租户ID登录到一个数据实例。必须进行多种配置才能使用OFBiz多租户。包括在“TenantDataSouces”实体中定义租户数据,这样做主要的原因是“多租户的优点是租户不必使用诸如‘ant运行安装…’或者其他命令行上的工具访问加载数据。可能有成百上千的人活跃在其他租户实例中,所以你不想关闭或启动服务器来做这样的事情,并且很有可能你可以避免有一个管理员负责为租户加载定制数据。你希望是自助服务,而且这是使其成为数据库驱动的关键点(有一个用户界面以便用户可以把东西放到数据库的相关部分)”,设置属性变量以便用户能够看到登录表单中的“租户ID”、实体引擎中的配置和ofbiz-component.xml中的条目,以加载数据。有多种命令可用来加载租户数据。你要谨慎地定义不同的reader来加载数据。我们有租户特定的delegator,而定义delegator我们必须遵守OFBiz多租户文档的命名规则。OOTB演示租户配置数据是德比指定的,但其他的数据源也可以像MySql,Oracle等那样进行配置。我们可以设置电子商务应用以使用特定的租户数据库,不过,你必须要配置Web.xml。租户数据加载和其他的配置设置应该通过数据库而不是配置文件进行管理,以便如果有新的租户添加进来或者我们需要为任何租户加载定制数据时,我们不用关闭服务器。这个地方需要更多改进。

    多租户实在是OFBiz功能列表的一个很好的补充。因为多租户功能,OFBiz现在可以被很好地用作SaaS并且如果和云计算一起使用,效果会更好。