这是我的第一个问题,所以我希望它能正确完成;)
我被分配了一个任务,为一些"自制的"python脚本提供一个Web界面.此脚本用于通过curl命令检查某些网站/应用程序的可用性.该脚本的一个非常重要的方面是它实时提供结果,逐行写入标准输出.
通过为此脚本提供Web界面,主要目标是可以从任何地方轻松使用脚本,例如通过智能手机.因此,Web界面必须非常基础,并且"无插件"工作.
我的问题是我在网上想到或发现的大多数解决方案(ajax,django,甚至是简单的帖子)似乎需要在将其发送到浏览器之前完整生成页面,从而失去了这个重要的"实时"方面.
有关如何正确做到这一点的任何想法?
提前致谢.
你的任务听起来很有趣。:-) 刚刚想到的一个场景:您使用自制脚本不断地抓取资源,并将结果同时推送到持久数据库和缓存系统(如 Redis)中。您的缓存系统/层在服务客户端请求时充当主要数据源。Redis fe 是一种高性能键值存储,每秒能够处理 100k 个连接。尽管只有最新的 n 个条目(比如 50k 条目)很重要,但缓存系统只会保存这些条目,让您专注于开发服务器端 API(处理连接、处理请求、从 Redis 读取)和前端。前端和后端 API 之间的通信可以由 WebSocket 连接驱动。HTML5 规范的一个相当新的部分。不过,目前发布的许多浏览器版本已经支持该功能。或者,您可以使用一些异步 Flash Socket 内容。Websocket 基本上允许客户端和服务器之间的持久连接;您可以注册为每个传入数据/数据包调用的事件侦听器——无需无休止的轮询或其他内容。