基本介绍
LinaPro的组件设计围绕一个核心原则展开:稳定底座,按需扩展。平台级通用能力由主框架统一内置,业务能力以自包含组件的形式独立交付,组件之间通过显式契约协作,不存在隐式耦合。
这套设计带来几个关键特性:
-
边界清晰,可以独立替换。 前端工作台、后端主框架、插件系统各自有明确的职责范围。工作台只依赖主框架的公开
API,插件只依赖主框架发布的稳定扩展接口。任何一层都可以在不破坏其他层的前提下独立升级或替换。 -
能力自包含,按需引入。 每个业务组件(插件)封装自己的
API路由、数据库资源、前端页面、菜单权限、语言包和定时任务,通过生命周期完成安装与卸载,不需要修改主框架代码。官方能力拆分为独立插件,不用的能力不会进入部署产物。 -
平台能力开箱即用。 认证、
RBAC权限、多租户、定时调度、国际化、集群协调、接口文档等基础能力内置在主框架中,业务插件直接消费,不需要重复实现。 -
双模式插件,兼顾灵活性与性能。 长期业务模块选择源码插件随主框架编译,获得原生
Go性能;需要热加载或商业二进制分发时选择WASM动态插件,两种模式共享同一套治理面。
相关内容
主框架功能设计
本文从架构总览角度介绍 LinaPro 主框架服务 lina-core,重点说明主框架在系统中的职责边界、运行时链路、启动加载流程、内置平台能力矩阵、插件扩展接缝以及与管理工作台、源码插件、WASM动态插件、PostgreSQL和Redis之间的协作关系,帮助开发者先建立整体认知,再进入配置、权限、接口文档、定时任务、国际化、多租户、插件系统和分布式架构等专题页面深入阅读。
默认管理工作台
本文从组件设计角度介绍 LinaPro 默认管理工作台 lina-vben,说明它如何作为主框架服务和插件系统的标准前端消费者,承载权限管理、系统设置、任务调度、多租户管理、插件治理、开发中心和动态插件页面,同时保持与后端 API契约、菜单权限和国际化资源的一致性。
双模式插件系统
3 个项目
原生分布式架构
本文从组件设计角度介绍 LinaPro 原生分布式架构,说明单机模式与集群模式的切换方式、Redis协调器、主节点选举、节点职责、缓存修订、分布式锁、键值缓存、定时任务执行范围和水平扩容流程,帮助开发者理解业务代码零改造扩展到多节点部署的实现基础。
服务配置管理
本文从组件设计角度介绍 LinaPro 主框架服务的配置管理能力,说明 config.yaml 如何统一驱动 HTTP服务、日志、数据库、JWT认证、会话、监控、健康探针、定时调度、公开前端工作台配置、国际化、集群协调、文件上传和插件治理,并给出生产环境需要重点关注的配置边界。
路由与中间件
本文从组件设计角度介绍 LinaPro 主框架服务的路由管理策略,涵盖主框架控制面 API 的 /api/v1 前缀、统一插件 API 命名空间 /x/{plugin-id}/...、内置中间件体系、鉴权路由分层、基于 g.Meta 标签的接口属性一体化维护,以及源码插件自定义非保留路由和动态插件 route contract 的差异化接入方式,帮助开发者理解框架路由体系并遵循最佳实践。
权限管理策略
本文从组件设计角度介绍 LinaPro 主框架服务的权限管理策略,涵盖 JWT 双 Token 的签发、解析与吊销机制,Access Token 与 Refresh Token 的生命周期管理,基于会话热状态的在线 Session 管理,RBAC 角色权限模型的设计思路(角色→菜单→权限的三层关系),Token 级别的访问上下文缓存与版本修订同步,API 权限的声明式管理方式(g.Meta 标签内联声明与 Permission 中间件的校验流程),以及菜单权限的管理机制(菜单类型、角色菜单关联、权限树与数据范围控制),帮助开发者全面理解框架鉴权与权限体系并遵循最佳实践。
静态资源与前端资产
本文介绍 LinaPro 的静态资源管理机制,阐述主框架如何通过 Go Embed 打包运行时资源和工作台构建产物,插件如何通过 public_assets 声明可公开静态资源,并说明 /admin 前端工作台入口、/x 插件 API、/x-assets 插件公开资产命名空间、源码插件自管路由和动态插件前端资源之间的职责边界,帮助开发者正确设计插件页面、公开资源和缓存版本策略。
一体化接口文档
本文从组件设计角度介绍 LinaPro 的接口文档能力,说明主框架、源码插件和WASM动态插件如何被聚合为统一的 OpenAPI 文档,g.Meta 契约、permission 权限标签、接口多语言资源、开发中心调试页面和第三方工具导入之间如何协作。
原生多租户能力
本文从组件设计角度介绍 LinaPro 多租户能力,说明主框架 bizctx、TenantFilterService、tenant_id 过滤接口、默认平台租户、官方 multi-tenant 源码插件、租户代管、插件多租户清单字段和当前 Pool 共享表模型之间如何协作。
定时任务调度与执行
本文从组件设计角度介绍 LinaPro 的持久化定时任务系统,说明任务类型、Cron表达式、任务分组、执行日志、内置任务、源码插件和动态插件任务声明、master_only 与 all_node 执行范围、singleton 与 parallel 并发策略以及集群调度行为。
框架级 I18N 国际化
本文从组件设计角度介绍 LinaPro 的 I18N 国际化运行时,说明主框架语言包、插件语言包、动态插件语言资源、接口文档 apidoc 翻译、运行时缓存、语言配置和前端语言切换如何协作,并解释新增语言时需要维护的资源边界。