使用工具:siege
代碼結構:
hello.py
templates
|--hello.html
hello.py代碼:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
@app.route('/<name>')
def index(name=None):
return render_template('hello.html',name=name)
if __name__ == '__main__':
app.run(host='0.0.0.0',port=13579, debug=False)
hello.html代碼:
from Flask</title>
{% if name %}
<h1>Hello {{ name }}!</h1>
{% else %}
<h1>Hello World!</h1>
{% endif %}
flask
指令:siege -c 1000 -r 100 -b http://127.0.0.1:13579/3344
結果:
Transactions: 29511 hits
Availability: 95.08 %
Elapsed time: 254.69 secs
Data transferred: 1.15 MB
Response time: 1.16 secs
Transaction rate: 115.87 trans/sec
Throughput: 0.00 MB/sec
Concurrency: 134.19
Successful transactions: 29511
Failed transactions: 1527
Longest transaction: 88.56
Shortest transaction: 0.00
gunicorn
指令:gunicorn -w 1 -b 127.0.0.1:13578 hello_gunicorn:app
指令:siege -c 1000 -r 100 -b http://127.0.0.1:13578/3344
結果:
Transactions: 57354 hits
Availability: 96.91 %
Elapsed time: 188.50 secs
Data transferred: 2.24 MB
Response time: 0.41 secs
Transaction rate: 304.27 trans/sec
Throughput: 0.01 MB/sec
Concurrency: 124.78
Successful transactions: 57354
Failed transactions: 1831
Longest transaction: 85.62
Shortest transaction: 0.00
tornado
指令:siege -c 1000 -r 100 -b http://127.0.0.1:13577/3344
結果:
Transactions: 217509 hits
Availability: 99.42 %
Elapsed time: 205.48 secs
Data transferred: 8.50 MB
Response time: 0.34 secs
Transaction rate: 1058.54 trans/sec
Throughput: 0.04 MB/sec
Concurrency: 356.45
Successful transactions: 217509
Failed transactions: 1266
Longest transaction: 89.39
Shortest transaction: 0.03
gevent
指令:siege -c 1000 -r 100 -b http://127.0.0.1:13576/3344
結果:
Transactions: 999952 hits
Availability: 100.00 %
Elapsed time: 509.62 secs
Data transferred: 39.10 MB
Response time: 0.48 secs
Transaction rate: 1962.15 trans/sec
Throughput: 0.08 MB/sec
Concurrency: 935.08
Successful transactions: 999952
Failed transactions: 48
Longest transaction: 63.23
Shortest transaction: 0.02
twisted
指令:twistd -n web --port 13575 --wsgi hello_twised.app
指令:siege -c 1000 -r 100 -b http://127.0.0.1:13575/3344
結果:
Transactions: 155276 hits
Availability: 99.14 %
Elapsed time: 321.25 secs
Data transferred: 6.07 MB
Response time: 0.77 secs
Transaction rate: 483.35 trans/sec
Throughput: 0.02 MB/sec
Concurrency: 371.09
Successful transactions: 155276
Failed transactions: 1340
Longest transaction: 83.32
Shortest transaction: 0.04