项目简介
本项目是基于Java的分布式旅游预订系统,为航班、酒店、汽车和客户的预订管理提供高效可靠的平台。借助分布式事务管理器和资源管理器,保障数据的一致性与可靠性。
项目的主要特性和功能
- 分布式事务管理:支持多资源管理器事务管理,保证跨多资源操作的原子性,具备事务启动、提交和中止功能。
- 资源管理:对航班、酒店、汽车和客户资源进行管理,提供资源的添加、删除、查询和更新操作。
- 预订管理:支持航班、酒店和汽车的预订,可进行预订的创建和取消。
- 死锁检测与处理:实现死锁检测机制,避免系统在高并发下陷入死锁,能自动中止死锁事务。
- 故障恢复:支持系统故障后的恢复,确保数据一致,提供故障模拟功能用于测试容错能力。
安装使用步骤
1. 环境准备
- 安装Java开发环境(JDK 8或更高版本)。
- 安装并配置好RMI(远程方法调用)环境。
2. 复制项目
bash
cd distributed-database-project
3. 编译项目
bash
javac -d bin src/transaction/*.java src/lockmgr/*.java src/test/*.java
4. 启动RMI注册表
bash
cd bin/transaction
rmiregistry
5. 启动事务管理器(TM)
bash
cd bin/transaction
java transaction.TransactionManagerImpl
6. 启动资源管理器(RM)
bash
cd bin/transaction
java transaction.ResourceManagerImpl RMINameFlights
java transaction.ResourceManagerImpl RMINameRooms
java transaction.ResourceManagerImpl RMINameCars
java transaction.ResourceManagerImpl RMINameCustomers
java transaction.ResourceManagerImpl RMINameReservations
7. 启动工作流控制器(WC)
bash
cd bin/transaction
java transaction.WorkflowControllerImpl
8. 启动客户端
bash
cd bin/transaction
java transaction.Client
9. 运行测试用例
bash
cd bin/test
java test.NormalTest
java test.RMFailureTest
java test.TMFailureTest
java test.SystemFailureTest
通过以上步骤,可成功启动并运行本系统,还能进行相关测试。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】