# 软工实践课程项目 **Repository Path**: lilinfeng98/SimplePBFT ## Basic Information - **Project Name**: 软工实践课程项目 - **Description**: 软工实践课程项目代码 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2022-01-20 - **Last Updated**: 2024-08-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 完成功能 - 集群节点动态增减 - 一致性协议 - 视图转换协议 # 运行方法 首先配置启动,允许多个main执行 然后,每次运行代码启动一个节点后,更改 `i` 值就可以在不同端口启动不同的节点。 ```java int i = 0; String ip = "127.0.0.1"; int port = 8080 + i; StartConfig.basePath = "E:\\Develop\\JavaProjectIDEA\\JavaSenior\\SimplePBFT\\config\\"; int index = i; ``` # 注意 1. 程序会自动新建一个json文件,里面保存节点的ip信息,`StartConfig.basePath`代表json文件保存位置。 2. 如果将所有节点全部结束后重新启动程序,需要将`config\\ip.json`中的内容全部删除。(比如i分别取值为0,1,2,3,即在本地8080,8081,8082,8083端口启动了4个节点,关闭程序后又想重新以上述四个端口启动运行就必须删除文件内容),否则会报已启动节点错误。 3. 本项目遵照PBFT一致性协议设计,只有主节点能够发送客户端消息,其他节点会发送消息失败。