我正试图以以下方式使用Django。
我有一个在后端运行的命令行实用程序,称之为foo
。
我希望当至少有一个人在django页面foo.com/kungfoo
上时运行foo
。
我还需要杀死脚本,当他们离开网页。这可以通过Javascript实现。
但是,如何确定是否有多个人同时查看该页面。理想情况下,如果页面上有其他人,我不希望foo
被杀。
我能想到的唯一方法是让Javascript每隔一分钟左右向Django推送一个I'm still here
状态。然后每分钟通过芹菜运行一个Python脚本,并检查Django是否获得了I'm still here
。如果foo
正在运行,则终止foo
。
有更好的方法吗?
我知道这个问题很宽泛,所以我会更具体一点。Django有没有一种方法可以统计查看网页的人数,如果这个数字是0,就运行脚本。
您可以将django通道与ReconnectingWebSocket一起使用,这样您就可以知道用户何时离开页面,或者更有用的是,当页面上没有用户时。