长时间运行的UI和API问题

时间:2019-04-21 09:38:14

标签: go vue.js

我有一个Web应用程序,它从GitHub内部获取一个Apache'access.conf'文件,然后通过HTTPS类型的经过身份验证的请求将其发送到临时目录中的服务器场。

当文件到达服务器1时,将完成一些操作: 1.通过脚本将现有的access.conf重命名为access.conf.back,并将新文件从temp移到/etc/httpd/conf.d。 2.通过apachectl -t测试文件 3.如果检查失败,则表示无法正常重启apache,因此,请不要重新加载并将旧文件移到适当位置,然后转到步骤6。 5.如果检查通过,则执行:apachectl -k graceful 6.转到列表中每个服务器的下一步

这一切都很好,但是我需要经验丰富的Web开发人员提供一些指导,说明如何在一个漂亮的表格中显示该表格,绿色的勾号表示“好”,红色的勾号表示“不好”。

我将如何显示上述三个步骤的状态,以及将access.conf的“部署”到服务器的状态,所以将执行以下三个操作:“发送文件”,“检查文件”,“服务器”重新启动。”这应该都是实时的。

API:/deployfile/access.conf 现在,这就是我被要求为WebUI做的事情。我还有一个ReST API,它也负责部署部分。它将接受请求并执行。并将结果存储在表中,并返回唯一的交易ID。

API:/ deployfile / status / id 对于Status API,从上面看,它将以从事务表获取的JSON对象显示部署结果。

API:/ restartservices / id 最后,重新启动Apache也是一个API,每次重新启动后,它将等待几分钟,以使负载均衡器再次恢复正常,然后再转到下一个服务器。这将在另一个线程中完成,因为这很耗时。

API:/ restartservices / status / id 再次,以JSON显示结果。

所以无论如何,我对Vue很熟悉,但是想要在行业中如何正确地做到这一点?

我可能对此想得太过分了,但是最好问一下。

谢谢。

1 个答案:

答案 0 :(得分:0)

使用服务器端事件。有许多Go语言库可以做到这一点。