徐海峰
个人记录
项目实训_无纸化会务系统
这个作者很懒,什么都没留下…
展开
-
软路由开启python-cgi
项目需要实现通过软路由开启连接限制,仅仅允许在系统中注册的设备连接到专用局域网,以保证会议中资料的安全性。 在开发过程中,我们发现在服务端和软路由之间通过ssh建立的连接并不稳定,尤其是需要短时间在路由器执行大量指令时,因为需要使用字节流来进行命令命令的传输和执行命令的回显,对路由器的io性能提出了一定要求。当路由器处理的网络数据过多时进行大量命令的处理,很容易造成路由器假死的故障存在。其次ssh连接超时中断的问题也对于维持ssh长连接来实现功能造成了一定的阻碍。 经过考察,笔者决定使用CGI来实现对路由器原创 2021-06-11 14:00:50 · 344 阅读 · 2 评论 -
主持人命令设计
之前使用了stomp设计了命令推送系统,现在需要将所有的需求设计出对应格式命令进行使用。 主持人使用接口来发送命令: @RestController() @RequestMapping("host") public class HostController { @Autowired private HostService hostService; /** * @api {POST} /host/beginMeeting beginMeeting * @apiVe原创 2021-06-11 10:42:34 · 112 阅读 · 2 评论 -
使用iptables进行入站流量过滤
iptables原创 2021-06-11 10:36:13 · 514 阅读 · 2 评论 -
客户端投票缓存
本次更新是实现了客户端的投票缓存机制。 首先对于单次会议的多个投票都需要保持一个投票的状态来保证业务的正常进行。 客户端使用一个有限状态机来管理投票的进程,对应的,后端服务也应该对应的保存状态。 根据业务逻辑,投票状态只在会议进行期间有效,所以并没有写入数据库进行持久化的需求。因此使用内存作为缓存是更好的选择,一来能够保证数据库内部数据的语义,二来也能凭借内存的存取速度实现更好的性能表现。 首先使用HashMap作为缓存,并加入dao层,这样使得缓存在项目层级中作为数据源的层级存在,不会破坏项目层级,保持了原创 2021-06-11 10:32:31 · 1097 阅读 · 1 评论 -
后台服务部署
面向客户端的服务完成之后尝试部署到一台全天开机的windows服务器上方便进行测试。服务器配置如下: 在部署过程中遇到了没有公网IP导致的无法访问,最终使用frp配合云服务器的方式解决。 最终结构如下图: 实现 首先从github下载frp 在Windows上添加配置文件: 启动服务 同样的在服务器端,使用wget安装frp,这次配置frps,指明绑定的端口,运行frps服务端程序, 可以看到服务器正常启动。 经过测试服务可以使用域名在外网正常访问 ...原创 2021-04-21 16:13:12 · 277 阅读 · 0 评论 -
使用Springboot处理文件上传功能
需求 管理员需要在会议创建阶段上传文件,这一动作需要在管理员专用的网页上进行处理。管理员在进行所有动作之前必须经过口令的验证。单独使用FTP来进行文件的上传将会打断后续的权限管理,所以需要使用SpringBoot实现此功能。 实现 在配置文件application.yml的spring下添加文件传输限制: 文件上传使用了http的multipartFile进行传输,首先创建FileController处理请求,接收客户端上传的文件,并使用FileService处理上传。 @RestController @原创 2021-04-21 15:35:05 · 141 阅读 · 0 评论 -
基于Stomp协议的时间通知机制
问题导入 系统运行过程中出现了由主持人的操作推动会议流程的场景,如何将主持人的命令通过服务器同步到每个人的设备上? 问题分析 在当前的系统设计中使用了C/S架构,基本上所有的请求都是终端通过http协议向服务器提出的,而服务器没有办法向终端主动发送消息。 备选方案 终端开启端口监听,运行服务器主动发起连接 终端轮询查询是否出现状态更新 使用WebSocket建立长连接 由于主持人的命令发送具有时间随机、数量少、要求相应速度等要求。耗费大量资源的轮询和终端监听方案被排除。 具体实现 WebSocket原创 2021-04-21 14:39:29 · 217 阅读 · 0 评论 -
终端原型设计
本周进行了终端的需求分析和视觉稿绘制。无纸化会务系统在终端的业务逻辑较少,主要集中在文件展示和投票上。同时,基于终端可以使用手写笔进行输入的特性,终端加入了会议笔记功能来代替传统会议的草稿纸来记录会议内容。 下面将详细叙述各个功能的交互逻辑。 会议信息 在会议正式开始之前,终端会显示一个会议信息页面用于显示会议相关信息,同时主持人有权决定何时正式开始会议。 文件浏览 文件浏览是本系统的核心功能之一,文件浏览功能支持pdf文档和mp4视频两种会议常见格式。服务器会根据会前管理员设置的权限将文件提前发送到对应原创 2021-03-21 19:34:58 · 187 阅读 · 0 评论