有没有办法使用伪随机序列或散列函数模拟队列的python random.sh
我正在构建一个基于任务队列的应用程序:它为多个异步连接的客户端提供一系列任务.扭曲是必须以随机顺序提供任务.
我的问题是我现在使用的算法计算成本很高,因为它依赖于许多大型查询和数据库传输.我有一个强烈的预感,有一个更便宜的方法来实现相同的结果,但我不能完全看到解决方案.你能想到解决这个问题的聪明方法吗? 这是我现在使用的(计算上很昂贵的)算法: 当客户端查询新任务时…… >查询数据库中的“未完成”任务 当客户端完成任务时…… 6A.记录结果并将任务标记为“已完成”. 如果客户未能在截止日期前完成任务…… 6B.将任务重新标记为“未完成”. 似乎我们可以通过用伪随机序列或散列函数替换步骤1,2和3来做得更好.但我无法弄清楚整个解决方案.想法? 其他考虑: >如果它很重要,我将使用python和mongodb来完成所有这些. (Mongodb没有一些聪明的“使用find_one来有效地返回随机匹配条目”的用法,是吗?) 解决方法
有一种从MongoDB获取随机文档的简单方法!
见Random record from MongoDB 如果您不希望两次选择任务,则可以将任务标记为活动而不选择它. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |