CURL在shell下可以用多线程么?

比如
http://a.com/a.php
http://a.com/b.php
同时请求出去
试过了PHP下的curl,最多只能到3个request同时发出,而我需要10来个。
用途举例:
我是用于攻击应用程序的,比如一个论坛有打卡机制,程序设计上每天只能打一次卡,
但如果保证有N(N>=1)个打卡的请求同时达到伺服器,极有可能攻击成功。
所以,希望各位别说啥这不是多线程呀啥的(multi-threads)。
浮云间
浏览 520回答 2
2回答

撒科打诨

这是多进程吧,连多线程都算不上PHP的多并发curl请求(curl_multi_系列函数),我记得没有什么限制吧,能贴一下代码上来吗?shell下执行多个curl当然是多进程。甚至于像网络蚂蚁那样分块HTTP下载单个文件都未必是多线程,因为每个HTTP请求到头来还是单独的。追究到底是用多进程还是多线程来做并发,无关紧要。但可以肯定的是:无论是用shell还是用php,同时启动多个/usr/bin/curl进程肯定是没问题的。楼主应该追究的重点,我估计在于如何多个HTTP请求同时发到服务器上。由于连接服务器的时间前后有所不同,所以如果不认真处理,并发的时间一致性恐怕不好。这个的解决方式是把连接请求一分为二,把创建连接和发送HTTP请求割裂开来操作。做法是让所有的并发端先连接到服务器,待连接全部就绪之后,再一起发送HTTP请求。这个我查了一下,似乎不是curl能做得到的,需要写程序。

jeck猫

这个问题我认为最合适的做法是用xargs的多进程:先把你的所有url存到一个文件里,比如说urls.txt吧
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript