python实现高并发tcp请求客户端_高并发HTTP请求客户端 - python语言编写

20200902 -

(这篇文章其实应该放在高并发、服务器性能一类的专栏下,但是暂时没有,不过后续还会研究利用C编程来进行这部分的内容,就放在这个下面)

0. 引言

之前的时候接触过高并发相关的内容,当时接触了类似epool这种编程模型,或者更高级的libev这种时间编程;但是这些都是面向服务端的内容,类似C10K这种经典问题。而对于客户端来说,虽然有很多不同语言或者不同类型的压测工具,但很少有介绍自己来编写这部分内容的。通过百度搜索也可以看到相应的结果。

也可能是搜索的关键词不对,反正从百度的搜索结果来看,基本上没有什么有效的结果。但是,直接在谷歌上搜索,是可以找到相应的博文的。所以,本篇文章从搜索得到的结果来入手,学习如何满足这部分需求。

1. 需求分析

利用python语言编写HTTP客户端,通过类似多线程/多进程,不管是什么手段,实现高并发的并发的连接来请求服务器。虽然有很多压测工具可以使用,但是这里并不是为了测试服务器的能力,而是能模拟出大量HTTP请求,而且说不定还要控制一些内部的逻辑,但是这里不进行深入探讨,只介绍如何模拟出针对某网页的高并发HTTP请求。先来列举一下自己当前能想到的改进方式。

1.1 改进方式(多线程)

如果要达到这样的高并发目的,那么必然不能使用阻塞式的通信方式,必须能够在等待时间过程中,同时能够进行其他的任务,这种需求当然可以利用多线程来实现,多个线程同时请求,并等待结果结果返回退出。

1.2 改进方式(复用TCP

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值