nginx, uwsgi, bottle, mako 설치 및 성능 테스트
이전 nginx, uwsgi, bottle, virtualenv 는 centos 6 에 설치 및 성능 테스트 를 통 해 nginx, uwsgi, bottle 의 성능 을 테스트 했다.
이 편 은 mako 템 플 릿 의 성능 을 계속 테스트 합 니 다.
1. mako 설치
tar -zvxf Mako-0.5.0.tar.gz
cd Mako-0.5.0
python setup.py install
2. 이전 nginx 프로필 수정
/usr/local/nginx/conf/nginx.conf
worker_processes 8; #24 cpu,8 nginx,16 uwsgi
events {
worker_connections 10240;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
charset utf-8;
root /application/venv/bottletest;
server_name cow.com;
location / {
include uwsgi_params;
uwsgi_param UWSGI_PYHOME /application/venv/bottletest;
uwsgi_param UWSGI_CHDIR /application/venv/bottletest;
uwsgi_param UWSGI_SCRIPT hello; # hello.py
uwsgi_pass 127.0.0.1:8888;
}
location ^~ /static {
root /application/venv/bottletest;
access_log off;
}
location /status {
stub_status on;
access_log off;
}
}
}
3. uwsgi 설정 xml 형식 설정 파일 수정
/usr/local/uwsgi/bottletest.xml
127.0.0.1:8888
/application/venv/bottletest
/application/venv/bottletest
/application/venv/bottletest
[WSGI Script (hello)]
256MB
16
/usr/local/uwsgi/logs/bottletest.log
/var/log/uwsgi.log
10000
4, python 파일 편집
/application/venv/bottletest/hello.py
from bottle import route, run, mako_view, default_app
@route('/hello/template/:names')
@mako_view('hello.html')
def template_hello(names):
names = names.split(',')
return dict(title='Hello World', names=names)
if __name__ == "__main__":
run(host="192.168.0.90", port=8080)
else:
application = default_app()
5. mako 템 플 릿 파일 편집
/application/venv/bottletest/view/index.html
${title}
%for name in names:
Hello, ${name}
%endfor
6. nginx 와 uwsgi 를 시작 합 니 다.
/usr/local/nginx/sbin/nginx
/usr/local/uwsgi/uwsgi -x /usr/local/uwsgi/bottletest.xml
7. 테스트 접근 결과
lynx --source http://192.168.0.90/hello/template/123,234,2343,21,adead,sa2221
Hello World
Hello, 123
Hello, 234
Hello, 2343
Hello, 21
Hello, adead
Hello, sa2221
웹 벤 치 시 뮬 레이 션 1000 클 라 이언 트 테스트, 시스템 부하 3 - 4 사이
./webbench -t 30 -c 1000 'http://192.168.0.90/hello/template/123,234'
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://192.168.0.90/hello/template/123,234
1000 clients, running 30 sec.
Speed=1202950 pages/min, 6295417 bytes/sec.
Requests: 601473 susceed, 2 failed.
웹 벤 치 시 뮬 레이 션 5000 클 라 이언 트 테스트, 시스템 부하 4 정도
./webbench -t 30 -c 5000 'http://192.168.0.90/hello/template/123,234'
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://192.168.0.90/hello/template/123,234
5000 clients, running 30 sec.
Speed=1313490 pages/min, 6872361 bytes/sec.
Requests: 656595 susceed, 150 failed.
총결산
성능 은 생산 환경 을 지원 할 수 있 습 니 다. cheetah 의 성능 과 mako 의 차이 가 많 지 않 지만 문서 가 복잡 하고 활발 하지 않 은 것 같 습 니 다.
nginx + uwsgi + bottle + mako 는 좋 은 선택 입 니 다. 데이터 베 이 스 는 mongodb 와 redis 를 사용 하기 때문에 ormapping 을 테스트 하지 않 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.