我有一个应用程序每隔五秒扫描一个输入目录,当一个作业(即文件)放在应用程序读取它的目录中时,处理它并在输出目录中输出另一个文件。
我的问题是,如果我想在此应用程序上放置基于Web的前端,我将如何等待处理完成?
我提出的两个解决方案是:
服务器有更好的设计吗?换句话说,TCP或命名管道在这种情况下会如何帮助? (由于DCOM对象,无法使用远程处理。)
答案 0 :(得分:0)
我认为Named Pipes不会让Web客户端更容易自动轮询,但它可能使服务器能够更好地通知另一个进程转换已完成 - 并最终排队消息到网络浏览器。
您可以尝试每隔几秒钟进行一次Web客户端轮询以查看文件进程是否已完成,或者您可以将Juggernaut“推送”命令输出到页面。 Juggernaut使用Flash在Web浏览器上打开一个套接字,该套接字不断地从服务器提供JavaScript。它可能负责发送命令以警告浏览器文件已完成,然后发出重定向。
答案 1 :(得分:0)
我们过去做过商业化的解决方案基本上是守护程序写入日志(通常是DB),带有日期/时间戳,关于它的作用,而Web前端只显示最新的X条目数量日志,通过一个小的切换来隐藏所有“查找目录,没有找到文件”消息,工作得相当好,我们稍后使用AJAX升级它(定时器每20秒重新加载一次)。