多线程基础
运维脚本常需同时检查多台主机、多个 URL 或多个 API。Python threading 模块适合 I/O 密集型任务(网络请求、SSH、读文件),可在等待响应时切换线程,提高吞吐。CPU 密集计算仍应使用多进程,本文不展开。
线程池批量巡检
concurrent.futures.ThreadPoolExecutor 是运维批量任务的首选:自动管理线程生命周期、限制最大并发、用 submit / map 提交任务并收集结果。典型场景:批量 HTTP 探活、SSH 端口检测、并行调用只读 API。
异步编程基础
asyncio 提供单线程协作式并发:在等待 I/O 时切换协程,适合大量 HTTP/API 调用且希望控制连接数。配合 httpx 的异步客户端,可替代线程池处理千级 URL 探活,内存开销更低。