Heim > Backend-Entwicklung > Python-Tutorial > In Python implementierter Multithread-HTTP-Stresstestcode

In Python implementierter Multithread-HTTP-Stresstestcode

高洛峰
Freigeben: 2017-02-10 09:13:11
Original
2368 Leute haben es durchsucht

Das Beispiel in diesem Artikel beschreibt den in Python implementierten Multithread-HTTP-Stresstestcode. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

# Python version 3.3

__author__ = 'Toil'

import sys, getopt

import threading

def httpGet(url, file):

  import http.client

  conn = http.client.HTTPConnection(url)

  conn.request("GET", file)

  r = conn.getresponse()

  #print(r.getheaders())

  while not r.closed:

    r.read(200)

  conn.close()

def Usage():

  print('''

  Options are:

  -c concurrency Number of multiple requests to make

  -u host     The host

  -f file     File on web

  Example: httpget.py -c 100 -u www.example.com -f /

  ''')

if __name__ == '__main__':

  opts, args = getopt.getopt(sys.argv[1:], "hc:u:f:")

  global u, c, f

  for op, value in opts:

    if op == '-c':

      c = int(value)

    elif op == '-u':

      u = value

    elif op == '-f':

      f = value

    elif op == '-h':

      Usage()

      sys.exit(0)

    else:

      sys.exit(0)

  threads = []

  times = c

  print('Test for ', u, f)

  print('waiting...')

  for i in range(0, times):

    t = threading.Thread(target=httpGet(u, f))

    threads.append(t)

  for i in range(0, times):

    threads[i].start()

  for i in range(0, times):

    threads[i].join()

Nach dem Login kopieren

Ich hoffe, dass dieser Artikel für alle in der Python-Programmierung hilfreich sein wird.

Weitere Artikel zum in Python implementierten Multithread-HTTP-Stresstestcode finden Sie auf der chinesischen PHP-Website!

Verwandte Etiketten:
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage