构建一个API蜘蛛,有多少线程太多了?每秒请求的想法?

时间:2012-11-20 20:53:36

标签: java scala

我想构建一个基本上从各种API中提取数据的服务。

在典型的服务器上,是否存在一个应该遵守的线程限制?

有没有人有任何相似的经验,有多少线程被认为是理想的,每秒可以期望什么样的请求?

100个线程太多了吗? 200?

我意识到这是我必须要测试的东西,但是寻找能够在其中构建类似内容的人可以在其上获得一些经验。

2 个答案:

答案 0 :(得分:1)

这取决于你的瓶颈和你的要求。你需要多快才能完成这些操作?线程是否构成IO?我知道他们会根据你的解释提出很多网络请求。

因此线程将在网络上等待。那么为什么你需要很多线程,也许异步操作会更快。

总的来说,正如Robert Harvey所评论的那样:回答你的问题要花费我们更长的时间来测试它并调整数字。线程数取决于你没有指定的各种变量,所以任何答案都是猜测

答案 1 :(得分:0)

对于您的特定情况,它可能更适合使用异步编程风格。在这种情况下,您可以使用少量线程实现大量的API调用 - 甚至可以与可用内核的数量相媲美。

有几个可用的库来实现这一点(Twitter是这里的王者)。

还有很多其他人。