我有一个业务流程管理应用程序,我每隔5分钟用下面的查询从DB2数据库中轮询一些行-- select * from Table where STATUS = 'New‘。
基于返回的行,我做了一些处理,然后将这些行的状态更改为“已读”。
但是,虽然这个过程正在完成,但它需要5分钟以上的时间,同时调度程序R1运行并获取一些在上次运行中已经获得的案例。
如何才能确保每个调度程序都挑选上次运行时未选中的行。我需要在select语句中做哪些更改?请帮帮忙。
作为一个简单的示例程序,我有一个连续调用服务器的节点脚本,希望这个程序能够运行很长时间。
该程序被设置为一个ping函数,该函数返回一个承诺对象。该承诺将根据ping是否有效或失败而得到解决或拒绝。
我希望让这个函数在一个循环中运行,所以不管ping是否成功,下一个ping都是在经过一定时间的之后,在之前的请求被解析后触发的。
问题不是这个任务本身,而是我关心我的实现。我相信它最终会导致堆栈溢出。
下面是一些代码来查看发生了什么:
function doPing(host) {
// returns a promise object.
}
function doEvery(ms, c