为了测试我们的服务器,我们设计了一个测试,它使用JSON有效负载发送大量请求,并比较它返回的响应。
我目前正试图通过使用多线程来找到优化流程的方法。我没有找到解决我遇到的问题的任何解决方案。
我有一个网址和一堆JSON文件(这些文件包含请求,每个请求文件都有一个预期的响应' JSON来比较响应)。 我想使用多线程来发送所有这些请求,但仍然能够匹配我收到的请求的响应。
有什么想法吗?
答案 0 :(得分:0)
嗯,你有几个选择:
multiprocessing.pool.ThreadPool
(Python 2.7)创建线程池,然后使用它们来分派请求。如果您想要发出异步请求,map_async
可能会引起您的兴趣,concurrent.futures.ThreadPoolExecutor
(Python 3)与ThreadPool
池的工作方式类似,但它用于异步执行callables,multiprocessing.Pool
,但我不确定这是否会给您带来任何好处,因为您将要做的就是I / O限制,所以线程应该做得很好,Twisted
或asyncio
发出异步请求,但如果您不习惯异步编程,则可能需要更多学习。答案 1 :(得分:0)
使用python多处理threadpool
可以比较return value
。
https://docs.python.org/2/library/multiprocessing.html https://gist.github.com/wrunk/b689be4b59270c32441c