后端工程结构
核心模块结构
1. 基础模块 (Foundation Modules)
innospots-base
- 功能: 项目基础模块,提供核心工具类、通用配置和基础设施
- 职责: 定义项目的基础架构和通用组件
innospots-bom
- 功能: 依赖管理模块 (Bill of Materials)
- 职责: 统一管理项目中所有依赖的版本,确保依赖一致性
innospots-universal
- 功能: 通用工具模块
- 职责: 提供跨模块的通用功能和工具类
2. 数据处理模块 (Data Processing Modules)
innospots-data-provider
- 功能: 数据提供者模块
- 职责: 统一数据访问接口,支持多种数据源的连接和数据获取
innospots-connector
- 功能: 连接器模块集合
- 子模块:
innospots-connector-core: 连接器核心功能innospots-connector-mysql: MySQL 数据库连接器innospots-connector-redis: Redis 缓存连接器innospots-connector-kafka: Kafka 消息队列连接器innospots-connector-api: API 连接器innospots-connector-imap: IMAP 邮件连接器innospots-connector-workflow: 工作流连接器innospots-connector-ai: AI 服务连接器
3. 脚本执行模块 (Script Execution Modules)
innospots-script
- 功能: 多语言脚本执行引擎
- 子模块:
innospots-script-base: 脚本执行基础框架innospots-script-java: Java 脚本执行器innospots-script-javascript: JavaScript 脚本执行器innospots-script-graaljs: GraalJS 高性能 JavaScript 执行器innospots-script-groovy: Groovy 脚本执行器innospots-script-python: Python 脚本执行器innospots-script-function: 函数式编程支持
4. 工作流模块 (Workflow Modules)
innospots-workflow
- 功能: 工作流引擎和编排系统
- 职责: 提供可视化工作流设计、执行和监控功能
- 子模块:
innospots-workflow-core: 工作流核心引擎,提供工作流定义、执行和状态管理innospots-workflow-runtime: 工作流执行器,负责节点调度和任务执行innospots-workflow-nodes: 预置节点集合,包含数据处理、AI、脚本等功能节点innospots-workflow-console: 工作流管理控制台,提供可视化管理界面
5. 调度模块 (Scheduling Modules)
innospots-schedule
- 功能: 任务调度系统
- 子模块:
innospots-schedule-core: 调度核心功能innospots-schedule-executor: 任务执行器innospots-schedule-workflow: 工作流调度innospots-schedule-node: 分布式节点调度innospots-schedule-console: 调度管理控制台
6. AI 集成模块 (AI Integration Modules)
innospots-ai
- 功能: AI 服务集成平台
- 子模块:
innospots-ai-core: AI 核心功能innospots-ai-openai: OpenAI 集成innospots-ai-zhipu: 智谱 AI 集成innospots-ai-bailian: 阿里云百炼 AI 集成innospots-ai-google-vertex: Google Vertex AI 集成innospots-ai-groq: Groq AI 集成innospots-ai-ollama: Ollama 本地 AI 集成innospots-ai-siliconflow: SiliconFlow AI 集成
7. 应用模块 (Application Modules)
innospots-app
- 功能: 应用层模块
- 子模块:
innospots-app-core: 应用核心功能innospots-app-console: 管理控制台innospots-app-visitor: 访客应用
8. 审批模块 (Approval Modules)
innospots-approve
- 功能: 审批流程管理
- 子模块:
innospots-approve-core: 审批核心功能innospots-approve-console: 审批管理控制台innospots-approve-node: 审批节点处理
9. 权限管理模块 (Authorization Modules)
innospots-libra
- 功能: 基础平台模块
- 子模块:
innospots-libra-base: 权限基础功能innospots-libra-auth: 认证服务innospots-libra-kernel: 控制台核心
10. 服务器模块 (Server Modules)
innospots-server
- 功能: 服务器和部署相关模块
- 子模块:
innospots-server-base: 服务器基础功能innospots-server-alone: 独立部署服务器
重点第三方依赖
| 依赖包 | 用途 |
|---|---|
| Spring 生态系统 | |
| spring-cloud-dependencies | Spring Cloud 微服务框架,提供分布式系统开发支持 |
| spring-boot-dependencies | Spring Boot 框架,简化 Spring 应用开发 |
| spring-ai-bom | Spring AI 框架,提供人工智能集成支持 |
| spring-security-bom | Spring Security 安全框架,提供认证和授权功能 |
| 数据库相关 | |
| mybatis-plus-boot-starter | MyBatis-Plus ORM 框架,简化数据库操作 |
| mysql-connector-j | MySQL 数据库连接驱动 |
| postgresql | PostgreSQL 数据库连接驱动 |
| jedis | Redis 客户端,用于缓存和数据存储 |
| 缓存 | |
| caffeine | 高性能本地缓存库 |
| 开发工具 | |
| lombok | 代码生成工具,减少样板代码 |
| mapstruct | 对象映射框架,简化 Bean 转换 |
| 脚本引擎 | |
| aviator | 轻量级表达式引擎,用于动态表达式计算 |
| nashorn-core | JavaScript 脚本引擎 |
| 工具库 | |
| guava | Google 核心 Java 库,提供集合、缓存等工具 |
| hutool-all | Java 工具类库,提供各种实用工具方法 |
| Apache Commons 系列 | |
| commons-lang3 | 字符串、数组等基础工具类 |
| commons-collections4 | 集合工具类扩展 |
| commons-io | IO 操作工具类 |
| commons-codec | 编码解码工具类 |
| commons-compress | 压缩解压工具类 |
| commons-csv | CSV 文件处理工具 |
| commons-net | 网络协议工具类 |
| 文档处理 | |
| poi | Apache POI,用于处理 Microsoft Office 文档 |
| easyexcel | 阿里巴巴 Excel 处理工具 |
| 序列化 | |
| jackson-bom | Jackson JSON 处理框架 |
| fastjson | 阿里巴巴 JSON 处理库 |
| snack3 | 轻量级 JSON 处理库 |
| 数据处理 | |
| calcite-core | Apache Calcite 数据处理引擎 |
| tablesaw-core | 数据分析和可视化库 |
| ta4j-core | 技术分析库,用于金融数据分析 |
| 网络通信 | |
| apache-sshd | SSH 客户端和服务器实现 |
| 邮件 | |
| jakarta.mail | 邮件发送功能 |
| 测试数据 | |
| datafaker | 测试数据生成工具 |
| 存储 | |
| mapdb | 嵌入式数据库引擎 |
| 系统监控 | |
| oshi-core | 系统和硬件信息获取库 |
| micrometer-registry-prometheus | Prometheus 监控指标注册 |
| micrometer-jvm-extras | JVM 额外监控指标 |
| 用户代理 | |
| UserAgentUtils | 用户代理字符串解析工具 |
| API 文档 | |
| swagger-annotations | Swagger API 文档注解 |
| springdoc-openapi | OpenAPI 3.0 文档生成 |
| 反射工具 | |
| reflections | Java 反射工具库 |
| 高性能 | |
| disruptor | LMAX Disruptor 高性能并发框架 |
| 云服务 | |
| tea-openapi | 阿里云 OpenAPI SDK |
| docmind_api | 阿里云文档智能 API |
| credentials-java | 阿里云凭证管理 |
| 依赖注入 | |
| jakarta.inject-api | Jakarta 依赖注入 API |
| 日志 | |
| slf4j-simple | SLF4J 简单日志实现 |
| UI 组件 | |
| innospots-ui | Innospots 主界面组件 |
| innospots-workflow-ui | Innospots 工作流界面组件 |
| innospots-page-ui | Innospots 页面界面组件 |