这是一个使用Spring Boot框架开发的订单处理服务,主要功能包括:
- 订单异步处理
- 线程池管理
- 性能监控
- REST API接口
- IntelliJ IDEA 或 Eclipse IDE(推荐使用IntelliJ IDEA)
- Java 8 或更高版本
- Maven 3.5 或更高版本
方法:使用Maven导入
- 打开IntelliJ IDEA
- 选择
File->Open - 导航到项目目录
E:\EclipseWorkSpace\Threads - 选择
pom.xml文件,点击Open - 在弹出的对话框中选择
Open as Project - 等待项目依赖下载完成
导入后,Eclipse会自动下载项目依赖。等待依赖下载完成后:
-
检查项目结构是否完整
- src/main/java 包含Java源代码
- src/main/resources 包含配置文件
- pom.xml 包含项目依赖配置
-
检查JDK配置
- 右键点击项目 ->
Properties - 选择
Java Build Path - 确保使用Java 8或更高版本
- 右键点击项目 ->
方式一:使用已配置的调试配置
- 确保项目已正确导入
- 点击顶部工具栏的
Run/Debug Configurations下拉菜单 - 选择
OrderServiceApplication配置(已自动导入) - 点击绿色的
Debug按钮(小虫子图标)开始调试
方式二:直接从主类启动
- 在Project视图中找到
com.orderservice包 - 展开包,找到
OrderServiceApplication.java文件 - 右键点击该文件 ->
Debug OrderServiceApplication
方式三:通过Maven启动
- 打开Maven工具窗口(通常在右侧)
- 展开
Threads->Lifecycle - 右键点击
spring-boot:run->Run Maven Build
项目启动后,控制台会输出Spring Boot的启动信息。
- 默认端口:8080
- 应用名称:order-service
可以通过以下URL验证项目是否正常运行:
- 健康检查:http://localhost:8080/api/health
- 性能指标:http://localhost:8080/api/metrics/performance
- 测试线程池:http://localhost:8080/test-thread-pool
- 线程池状态:http://localhost:8080/pool-status
com.orderservice
├── config/ # 配置类
│ └── ThreadConfig.java # 线程池配置
├── controller/ # 控制器
│ ├── MetricsController.java # 性能指标控制器
│ ├── TestController.java # 测试控制器
│ └── ThreadPoolAdminController.java # 线程池管理控制器
├── service/ # 服务层
│ └── OrderService.java # 订单服务
├── thread/ # 线程相关组件
│ ├── CustomRejectedExecutionHandler.java # 自定义拒绝策略
│ └── NamedThreadFactory.java # 命名线程工厂
├── testdata/ # 测试数据生成
│ ├── GenerateTestData.java # 测试数据生成工具
│ └── OrderTestDataGenerator.java # 订单测试数据生成器
├── util/ # 工具类
│ └── PerformanceMetrics.java # 性能指标收集器
└── OrderServiceApplication.java # 应用入口类
-
依赖下载失败
- 检查网络连接
- 检查Maven配置(settings.xml)
- 右键点击项目 ->
Maven->Update Project...
-
端口被占用
- 修改
src/main/resources/application.properties中的server.port配置
- 修改
-
类找不到或导入错误
- 确保所有类都在正确的包目录下
- 检查导入语句是否正确
- 执行
Maven -> Update Project...或Clean Project
-
启动时出现Bean创建错误
- 检查ThreadConfig.java中的线程池配置
- 确保所有@Autowired的依赖都能正确注入
| 接口路径 | 方法 | 功能描述 |
|---|---|---|
| /api/health | GET | 健康检查 |
| /api/metrics/performance | GET | 获取性能指标 |
| /api/metrics/reset | GET | 重置性能指标 |
| /api/metrics/system | GET | 获取系统指标 |
| /test-thread-pool | GET | 测试线程池 |
| /pool-status | GET | 获取线程池状态 |
| /thread-pool/adjust | GET | 调整线程池参数 |
项目包含JMeter测试计划,位于 jmeter_tests 目录下,可以用于对API进行性能测试。
更多详细信息请参考 performance_test_plan.md 文件。