📝 面试求职: 「面试试题小程序」 ,内容涵盖 测试基础、Linux操作系统、MySQL数据库、Web功能测试、接口测试、APPium移动端测试、Python知识、Selenium自动化测试相关、性能测试、性能测试、计算机网络知识、Jmeter、HR面试,命中率杠杠的。(大家刷起来…)
📝 职场经验干货:
对于初学者来说,异步编程似乎很复杂且令人望而生畏。但它是你可以添加到 Python 工具包的最强大的工具之一。
想象一下,编写的代码在等待响应时永远不会闲着——你的程序会变得更快、响应更快,并且能够同时处理多个任务。
在本文中,我将带大家逐步了解从基础到高级并发技术的9个级别。无论你是异步新手还是希望提高技能,希望对大家有所帮助。
Level 0:理解异步编程的必要性
考虑一个从多个网站获取数据的脚本。使用同步编程,每个请求都会阻止程序,直到完成为止:
import requests
import time
# The urls list could be much longer
urls = ["http://example.com",
"http://example.org",
"http://example.net/",]
start_time = time.time()
for url in urls:
response = requests.get(url)
print(response.status_code)
print(f"Sync code cost {time.time() - start_time:.2f} seconds")
# Sync code cost 0.64 seconds
上述代码以同步方式逐一处理 3 个 URL,按顺序处理每个 URL,然后转到下一个,直到当前 URL 完成。
总共花费了0.64秒。
看上去可以接受吗?
想象一下,10 个 URL 需要等待 3 秒钟,最终整个过程需要 30 秒。更不用说 100 个 URL、100000 个 URL 等等。这个程序会非常耗时。
这种场景,也就是所谓的