主节点后端 - scutrobotlab/RM2022_SimulatorX GitHub Wiki

主节点后端

设计起因

主节点肩负着调度各个服务器的功能,客户端需要向其发起请求才能找到对应的子节点服务器。

老版本后端

老版本后端采用 JavaScript 编写。子节点定时向主节点发送心跳包报告自己的情况,当有客户端需要联机时,中心节点会告诉其可用房间的信息,当某个子节点一段时间没有报告数据时,主节点会把它移除。这套软件可以说是非常简陋,但在模拟器的长期联机服务中稳定运行了非常长的时间。截止今天(2022 年 10 月 7 日),模拟器的联机服务仍然采用这套系统。

新版本后端

2022 年 2 月 25 日,我们开启了全新的主节点项目。

我们选用了如下的技术栈:

  • 编程语言:Kotlin
  • 基础框架:SpringBoot
  • Web 服务器:SpringMVC
  • 依赖管理:Gradle
  • JSON 序列化:FastJSON

该后端软件承担了部分后台的功能(包括很多还没有与大家见面的新功能),但目前在调度方面仍然没有取代上述老版本后端。后续我们会加快统一后端的进程,用新版后端代替老后端。