所以我们有命令行脚本(用 Python 编写),它位于客户机器上,每 24 小时后以 CSV 格式向我们发送数据。现在,我们实际上希望能够告诉客户随时向我们发送数据。几乎所有客户都在 MS Windows 机器上,要求我们可以在客户机器上安装很少的软件(大多数人甚至无法登录到客户机器,只有少数人可以)。
我实际上不确定如何最好地解决这个问题。可能是以下三种可能的方式(但正在寻找更好的方式)
我们用 Python 制作一个守护进程并将其安装在客户机器上。守护进程与我们的服务器对话,我们发回配置信息。在该配置信息中,我们发回“睡眠持续时间”。所以守护进程向我们发送数据,然后在“睡眠持续时间”变量中定义的秒数进入睡眠状态。一旦限制结束,守护进程 ping 我们,我们再次发回配置信息。冲洗并重复。
我们在客户机器上安装一个脚本,它每小时运行一次。最后,我们存储了客户应该多久向我们发送一次数据(24 小时、12 小时等),当脚本与我们交谈时,我们确定已经过去了多长时间以及该脚本是否应该发送给我们数据?如果是时候,那么我们告诉脚本向我们发送数据。
我们安装了一个非常小的服务器端(Django 或 Flask)应用程序,它在客户机器上运行。每当我们需要数据时,我们都会向客户机器发送请求,我们的小型服务器端应用程序会为我们服务。为此,我们可能会要求我们的客户为我们保留一个端口(不确定有多少客户实际允许这样做)
我相信有更好的方法可能。您能告诉我以上哪种方法最合适吗?或者请让我知道是否有更好的方法。
我非常感谢所有见解,提前感谢所有帮助。