请问一下 python3 在单核 cpu 情况下,将网络获取的数据再 post 出去,如何提高速度。

2019-03-08 11:25:27 +08:00
 spotfg

之前都是直接用 multiprocessing 开多进程,但是现在只是单核。。。 同步执行获取到的数据,再发送出去这个过程,两次网络 IO 挺浪费时间的,大佬们有好的解决方法不?

893 次点击
所在节点    问与答
4 条回复
snBDX1b0jJM4ogKd
2019-03-08 19:23:20 +08:00
网络环境下,不用协程也应该多线程,多进程是什么鬼
yushenglin
2019-03-09 17:32:53 +08:00
你开个多线程不就好了吗?
spotfg
2019-03-10 11:22:04 +08:00
@cs010 因为以前需要把获取的任务,通过任务参数 get 请求得到大量数据分析之后,再 post 请求出去。所以用多进程。现在不需要分析,直接发出去。
大佬,多线程和网络异步有好的推荐库吗
snBDX1b0jJM4ogKd
2019-03-10 19:33:45 +08:00
@spotfg 异步 python3 有 aiohttp,或者同步直接开线程池就行了,不过看你使用场景复杂,如果不复杂的话,就自带的库就能胜任,比如 asyncio

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/542434

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX