🔄
双模驱动架构
一套代码,单体与微服务自由切换。初期单体极速开发,后期微服务平滑演进,无需重构业务代码。
MolanDev 是一个完整的开源解决方案,包含框架、应用与 AI 能力:
| 组件 | 说明 | 文档 |
|---|---|---|
| MolanDev Framework | 支持单体/微服务自由切换的应用框架 | 框架文档 |
| MolanDev Cloud | 基于框架构建的企业级管理系统 | 应用文档 |
| MolanDev Knowledge | 企业级 RAG 知识库服务 | 知识检索 |
| AI Agent 集成 | Meta-Tool 模式的 LLM 工具调用实践 | AI 集成 |
| 层级 | 技术 |
|---|---|
| 后端 | Spring Boot 3.5 · Spring AI 1.1 · MyBatis-Plus 3.5 |
| 前端 | Vue 3 · Element Plus · Vite |
| AI | qwen3-rerank · RAG · SSE 流式输出 |
| 安全 | RSA+AES · 接口防篡改 · 数据脱敏 |
molandev.run-mode: single/cloud 一行切换# application.yml
molandev:
run-mode: single # 单体:事件本地分发
# run-mode: cloud # 微服务:事件通过 RabbitMQ 跨服务传递// 定义 API 接口
@FeignClient(name = "user-service")
public interface UserApi {
@GetMapping("/user/get")
UserDTO getUserById(@RequestParam Long id);
}
// 实现接口(无需写 Controller)
@Service
public class UserServiceImpl implements UserApi {
@Override
public UserDTO getUserById(Long id) {
return userMapper.selectById(id);
}
}
// 框架自动判断:同服务本地调用,跨服务远程调用@DictFormat 注解自动翻译代码值@Log 注解自动记录操作信息| 对比项 | 传统方案 | MolanDev |
|---|---|---|
| 初期架构 | 微服务过度设计 | 单体极速启动 |
| 业务扩展 | 推倒重来 | 按需拆分 |
| 开发调试 | 微服务联调困难 | 本地如丝般顺滑 |
| 代码复用 | 两套代码维护 | 一套代码双模 |
| 学习成本 | 分散各文档 | 完整生态一站 |
如果这个项目对你有帮助,请给我们一个 Star ⭐
MIT License - 自由使用,无任何限制