Python의 웹 프로젝트를 기반으로 하는 일반적인 배포 방법은 다음과 같습니다.
nginx 설치
apt-get install nginx-full nginx-common
server { listen 80; server_name 10.1.6.79; access_log /var/log/nginx/example_access.log; error_log /var/log/nginx/example_error.log; root /var/www/example; location / { uwsgi_pass 127.0.0.1:9001; include uwsgi_params; uwsgi_param uwsgi_scheme $scheme; uwsgi_param server_software nginx/$nginx_version; } }
uwsgi 설치
apt-get install uwsgi uwsgi-plugin-python
<uwsgi> <plugin>python</plugin> <socket>127.0.0.1:9001</socket> <pythonpath>/var/www/example/app/</pythonpath> <app mountpoint="/"> <script>wsgi_configuration_module</script> </app> <master/> <processes>4</processes> <reload-mercy>8</reload-mercy> <cpu-affinity>1</cpu-affinity> <max-requests>2000</max-requests> <limit-as>512</limit-as> <reload-on-as>256</reload-on-as> <reload-on-rss>192</reload-on-rss> <no-orphans/> <vacuum/> </uwsgi>
#!/usr/bin/python import os import sys sys.path.append('/var/www/example/app') os.environ['python_egg_cache'] = '/var/www/example/.python-egg' def application(environ, start_response): status = '200 ok' output = 'hello world!' response_headers = [('content-type', 'text/plain'), ('content-length', str(len(output)))] start_response(status, response_headers) return [output]
uwsgi 시작을 위한 매개변수
uwsgi -x /etc/uwsgi/apps-enabled/default.xml --daemonize /var/log/uwsgi/app/default.log
-m은 마스터 프로세스를 시작합니다.
-p 4는 4개의 프로세스를 시작합니다.
-s 사용된 포트 또는 소켓 주소
-d 사용 da emon의 실행 모드입니다. -d를 사용한 후에는 -d /var/log/uwsgi.log
와 같은 로그 파일 주소를 추가해야 합니다. -r 10000 10,000개의 프로세스를 시작한 후 자동으로 다시 생성됩니다
-t 30 시간 초과를 30초로 설정합니다. 시간 초과 후 링크는 자동으로 삭제됩니다
-limit-as 32 프로세스의 총 메모리를 32m으로 제어합니다
-x 프로필 모드 사용
uwsgi -s :9090 -w myapp -p 4
uwsgi -s :9090 -w myapp -m -p 4
uwsgi -s :9090 -w myapp -m -p 4 -t 30
uwsgi -s :9090 -w myapp -m -p 4 -t 30 --limit-as 128
uwsgi -s :9090 -w myapp -m -p 4 -t 30 --limit-as 128 -r 10000
uwsgi -s :9090 -w myapp -m -p 4 -t 30 --limit-as 128 -r 10000 -d uwsgi.log
#inherited_config=/usr/share/uwsgi/conf/default.ini inherited_config=/etc/uwsgi/apps-enabled/default.xml
Start nginx
/etc/init.d/nginx start
브라우저 입력 IP: 포트: 192.168.1.99:9090
"축하합니다!!! uwsgi 테스트 OK!!!"를 볼 수 있습니다.
위 내용은 Nginx 및 uWSGI를 사용하여 Python 웹 프로젝트를 구성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!