多应用管理是 NocoBase 提供的统一应用管理方案,用于在一个或多个运行环境中创建和管理多个物理隔离的 NocoBase 应用实例。通过应用监管器 (AppSupervisor),用户可以在统一入口中创建和维护多个应用,满足不同业务、不同规模阶段的需求。
在项目初期,大多数用户会从单应用开始。
这种模式下,系统只需要部署一个 NocoBase 实例,所有业务功能、数据和用户都运行在同一个应用中。部署简单、配置成本低,非常适合原型验证、小型项目或内部工具。
但随着业务逐渐复杂,单一应用会面临一些自然的限制:
此时用户会希望将不同业务拆分到多个应用中,以提升系统的可维护性和扩展性。
当用户希望对业务进行拆分,但又不希望引入复杂的部署和运维架构时,可以升级到共享内存的多应用模式。
在这种模式下,一个 NocoBase 实例中可以同时运行多个应用。每个应用在逻辑上是独立的,可以连接独立的数据库,可以单独创建、启动和停止,但它们共享同一个进程和内存空间,用户仍然只需要维护一个 NocoBase 实例。

这种方式带来了明显的改进:
不过,由于所有应用运行在同一进程中,它们会共享 CPU、内存等资源,单个应用的异常或高负载,可能会影响到其他应用的稳定性。
当应用数量持续增加,或者对隔离性和稳定性提出更高要求时,就需要进一步升级架构。
当业务规模和复杂度达到一定程度,应用数量需要成规模扩展时,共享内存的多应用模式会面临资源争用、稳定性和安全性等挑战。在规模化阶段,用户可以考虑采用多环境混合部署的方式,用于支撑更复杂的业务场景。
这种架构的核心,是引入一个入口应用,即部署一个 NocoBase 作为统一的管理中心,同时部署多个 NocoBase 作为应用运行环境,用于实际运行业务应用。
入口应用负责:
实例应用环境负责:
对用户来说,多个应用依然可以通过一个入口创建和管理,但在内部:

这种方式适合用于 SaaS 平台、大量 Demo 环境或多租户场景,在保证灵活性的同时,也提升了系统的稳定性和可运维性。