Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Archtechx/租赁


Archtechx/租赁


ArchTechX/租赁是一个全面且灵活的多租户包装,专为Laravel应用而设计。它允许开发人员在现有应用程序中不需要重大的代码更改而实施多租户,从而提供了一种自动和无缝的方式来管理单个Laravel安装中的多个租户。

该软件包采用自动多租赁方法运行,这意味着它要照顾租户特定的配置,例如数据库连接,caches,文件系统,队列和REDIS商店。这种自动化使开发人员能够将单租户应用程序转换为多租户SaaS平台,在代码库中使用最少的干预。

Archtechx/租赁的主要功能包括:

- 自动租户身份:它根据主机名识别租户,包括对二级域的支持。这允许基于房客的域而无需手动配置的路由和上下文切换。

- 无需更改代码:租赁管理不需要您用特定的特征修改模型,也不需要用租赁感知版本来替换Laravel Core类,例如缓存或存储。这导致了尊重拉拉维尔公约的干净整合。

- 支持单个和多数据库租赁模型:您可以通过数据库分开租户数据,也可以使用带有租户搜索模型的共享数据库。对于多数据库方法,该软件包将自动为适当的租户数据库提供特征。

- 基于事件的体系结构:该软件包是围绕在租户生命周期动作(例如创建,初始化和破坏)中发射的事件构建的。该设计使开发人员可以将这些事件挂钩并根据需要自定义行为,从而创建一个高度可扩展的系统。

- 与其他Laravel软件包集成:ArchTechx/租赁与其他Laravel生态系统软件包(包括Laravel Nova)平稳集成,从而轻松地从熟悉的工具中管理特定于租户的资源。

- 可检验性:它的设计考虑了可检验性。该软件包允许对租户注册流,租户上下文切换和特定于租户的操作进行彻底的测试,从而确保稳定且可靠的多租户设置。

- 用户和资源共享:软件包支持用户可能属于多个租户的方案。它具有资源同步功能,可以在必要时在租户数据库中同步数据。

- 用户模仿:它包含用于用户模仿的功能,允许行政用户在系统中模拟租户用户以进行调试或支持。

- 数据库兼容性:它可以与多个数据库系统一起使用,包括MySQL,PostgreSQL,SQLite和Supports PostgreSQL模式,为租户数据分开提供了灵活性。

- 手动和自动模式:虽然默认模式自动切换上下文,但软件包还支持手动租赁管理,如果开发人员更喜欢控制数据库连接,则开发人员可以在其中明确指定租户上下文。

- 包装功能:该软件包被认为是Laravel租赁套餐中最丰富的功能,提供了各种各样的工厂工具,以满足常见的SaaS需求,例如域保护,租户生命周期管理和资源隔离。

该软件包在Laravel社区中受到高度评价,在GitHub上维护了4,000多颗星,并在各种托管平台上使用了许多生产应用程序。它正在积极发展,定期发行和热情的贡献者基础。

与其他Laravel租赁套餐(如Spatie/Laravel-Multiteenancy)的比较表明,Archtechx/租赁提供了更广泛的自动设置功能和更灵活的事件驱动的架构。这使其适用于期望复杂的租赁要求或想要最小化现有应用结构的项目。

安装通常涉及通过作曲家,发布配置文件注册软件包,并设置租户感知路线和中间件。设置后,可以通过编程或通过管理接口创建租户,并且软件包在每个请求期间会自动管理租户环境。

该软件包还提供了有据可查的API和指南,以及通过Github和其他渠道的社区支持,使新移民和经验丰富的Laravel开发人员都可以使用。

总而言之,ArchTechX/租赁是一种强大,灵活且高度自动化的多租户解决方案,旨在帮助Laravel开发人员构建具有最小代码修改和最大可扩展性的可扩展SaaS应用程序,并轻松支持简单和高级租赁方案。它的事件驱动的模型,多数据库支持和深度Laravel Integration将其作为多租户Laravel项目的领先选择。