PHP - 从远程服务器恢复实时数据



我在Symfony 3中有一个网站,它在远程服务器UNIX上运行脚本。我想在网站上实时或每 X 秒了解脚本的进度(步骤(,而无需用户重新加载页面。

应该考虑什么解决方案?


编辑 - 关于脚本:

当用户单击按钮时,Symfony会运行一个shell脚本,该脚本与我的Web应用程序位于同一服务器上。shell 脚本连接到远程服务器(用户(上的 SSH,并在远程服务器上安装组件。外壳脚本相当长且复杂。

有两种可能的解决方案:

您可以执行一个间隔,每 x 毫秒检查一次是否有任何更改,并将这些更改应用于前端。

另一种选择是使用 Web 套接字进行设置,并建议通过间隔检查进行设置。它保持与服务器的活动连接,因此即使不是即时,也是近乎即时的。

我建议查看此捆绑包:https://github.com/GeniusesOfSymfony/WebSocketBundle

我实际上不明白如何

在远程服务器 UNIX 上运行脚本

您正在执行此操作,但这是您可以使用的解决方案。

  1. 有一个symfony命令,可以监听远程服务/服务器/应用程序等。
  2. 有一个symfony控制器,它可以流式传输来自控制台命令的响应,并在它们到达时在twig模板中回显结果。

这样,用户无需刷新页面。轮子已经在这里发明了 从symfony控制器为您输出的流式控制台命令。您只需要根据需要更新命令。

注意:如果您不想要控制台命令方法,这是无命令版本。来自带有XMLHttpRequest 的twig template的流式symfony响应

相关内容

最新更新