0

我正在尝试实现一些代码以通过服务的 API 从另一个服务导入用户数据。我将设置它的方式是将所有请求作业保存在一个队列中,我的简单导入程序将从该队列中提取。一次处理一项任务不会接近最大化计算机的任何资源,所以我想知道构建程序以一次运行多个“作业”的标准方法是什么?我应该研究线程还是可能从队列中提取作业并启动导入程序实例的程序?谢谢您的帮助。

编辑:我现在拥有的是 Python,尽管如果需要,我愿意用另一种语言重写它。

4

1 回答 1

1

使用Producer-Consumer queue,使用尽可能多的 Consumer 线程来优化主机上的资源使用(抱歉 - 这是非常模糊的建议,但“正确的数字”取决于问题)。

如果请求是轻量级的,您可能只需要一个生产者线程来处理它们。

启动多个进程也可以工作 - 最佳选择取决于您的要求。您是否需要生产者知道操作是否有效,还是“即发即弃”?失败时是否需要重试逻辑?你如何在这个模型中保持并发消费者的数量?等等。

对于 Python,看看这个.

于 2011-06-13T20:38:11.887 回答