littlebot
Published on 2025-04-12 / 2 Visits
0

【源码】基于Java的微服务自动划分系统

项目简介

本项目借助自动化手段对大型软件系统开展微服务划分工作。通过对系统的类图和时序图进行分析,生成满足部署约束的微服务集合,每个微服务涵盖类之间的关系、对外提供的接口列表以及数据库。项目运用Java编程语言,结合Spring Boot框架开发,致力于提供高效、灵活的微服务划分解决方案。

项目的主要特性和功能

  1. 自动划分微服务:以系统类图、时序图为输入,输出包含类关系、接口列表和数据库的微服务集合。
  2. 多种算法支持:支持Fast Newman、Chinese Whisper、Markov等多种微服务划分算法,生成初步方案并检查是否符合部署位置约束。
  3. 质量分析:计算微服务的耦合度、内聚度、通讯代价等指标,通过质量实例和原则实例打分,生成符合部署约束的解决方案列表。
  4. 部署位置约束检查:检查微服务的部署位置约束,保证生成的解决方案契合实际部署需求。
  5. 接口和日志管理:提供简单的控制器类处理特定URL请求并返回页面,使用Lombok库简化日志编写,便于日志管理与调试。

安装使用步骤

环境准备

  • 确保已安装Java开发环境(JDK 8或更高版本)。
  • 安装Maven构建工具,用于管理项目依赖和构建项目。

复制项目

bash cd MsDivide

构建项目

bash mvn clean install

运行项目

bash mvn spring-boot:run

访问项目

项目启动后,可通过浏览器访问http://localhost:8080/hello,查看简单的控制器返回的页面。

配置和自定义

  • 根据实际需求,修改配置文件中的类图和时序图路径。
  • 可通过修改算法配置,选择不同的微服务划分算法。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】