我正在构建一个研究Web应用程序,该应用程序可以运行长时间的长时间批量分析。
我正在使用 Grails ,但我认为这是一个一般性的设计问题。
批处理过程可以通过网址(例如
http://mydomain/experiment/run?a_lot_of_params
并且此页面返回有关实验的信息(其数据存储在后端,并且可以通过另一个Web界面访问)。
例如
Experiment finished: results available at
http://mydomain/experiment/data/myexperiment.xml
这种方法的问题是:如果实验持续几分钟,则可以让网页等待。但是,如果实验持续10个小时会怎样?如果用户关闭页面怎么办?
对于这种情况,是否要遵循正确的设计模式?
感谢您的任何提示。
最佳答案
您可以给用户一个 token ,并让他们输入该 token 以查看进程的状态。
在该过程结束时,您可以通过email / call / sms通知用户。
关于design-patterns - 从网络界面运行长时间的实验,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3996313/