uwsgi 예제

이 환경이 활성화되면 설치된 모든 파이썬 패키지가 이 디렉터리 계층 구조에 포함됩니다. 시스템의 파이썬 환경을 방해하지 않습니다. 이 점을 염두에 두고 이제 pip를 사용하여 uWSGI 서버를 환경에 설치할 수 있습니다. 이 에 대한 패키지를 uwsgi라고합니다 (이것은 여전히 uWSGI 서버가 아닌 uwsgi 프로토콜입니다): uWSGI 서버는 nginx 웹 서버로 파이썬 응용 프로그램을 배포하기위한 비 FastCGI 방법을 제공합니다. nginx와 협력하여 uWSGI는 뛰어난 안정성, 유연성 및 성능을 제공합니다. 그러나 uWSGI 및 nginx가 있는 응용 프로그램을 배포하려면 포함된 uwsgi 모듈을 사용하여 nginx를 수동으로 컴파일해야 합니다. “Hello World” 응용 프로그램을 배포하려면 다음 코드를 /srv/www/example.com/application/wsgi_configuration_module.py 파일에 삽입합니다. 하나는 로컬 인터페이스에서 실행되고 4개는 고유한 Linodes(192.168. 주소 또는 개인 “백 엔드” 네트워크)의 로컬 네트워크 인터페이스에서 실행됩니다. 이러한 전용 응용 프로그램 서버에서 실행되는 응용 프로그램 서버는 위에서 설명한 응용 프로그램 서버와 동일합니다. 그러나 응용 프로그램 서버 프로세스는 요청에 응답할 수 있도록 적절한 네트워크 인터페이스에 바인딩하도록 구성되어야 합니다.

이 도메인 또는 IP 주소의 모든 요청을 WSGI 응용 프로그램으로 보내려고 하므로 모든 요청과 일치해야 하는 /로 시작하는 요청에 대해 단일 위치 블록을 만듭니다. 내부에는 include 지시문을 사용하여 Nginx 구성 디렉토리에 있는 파일의 기본값에 대한 적절한 기본값을 가진 여러 매개 변수를 포함합니다. 이러한 파일을 uwsgi_params라고 합니다. 그런 다음 uwsgi 프로토콜을 통해 uWSGI 인스턴스로 트래픽을 전달합니다. 우리는 우리가 이전에 구성 한 유닉스 소켓을 사용합니다 : 당신은 다음 uwsgi@application1.service를 활성화하고 시작할 수 있습니다. 참고:이 WSGI 응용 프로그램은 종류에 가장 기본적인 예입니다. 응용 프로그램 모듈에서 고유한 응용 프로그램 개체를 포함하려면 이 코드 블록을 교체해야 합니다. id 속성이 다른 것으로 표시된 여러 스탠자를 파일에 가질 수도 있습니다. 사용할 스탠자를 선택하려면 xml 옵션에서 파일 이름 옆에 있는 ID를 지정하고 콜론을 구분 기호로 사용합니다. 이 ID 모드를 사용하는 경우 파일의 루트 노드는 원하는 것일 수 있습니다. 이렇게 하면 다른 XML 파일에 uwsgi 구성 노드를 포함할 수 있습니다. 진실은 `@`는 uwsgi 패키지를 설치지원 uwsgi 계획의 모든에서 읽을 수 있다는 것입니다.

플러그인은 별도로 설치해야합니다 (패키지 이름은 uwsgi 플러그인 -로 시작). 그런 다음 파일을 다음 예제 구성으로 바꿔 Nginx가 역방향 프록시로 작동하도록 하여 응용 프로그램과 대화할 수 있습니다. 위의 예제에서는 uWSGI 서버를 수동으로 시작하고 명령줄에 일부 매개 변수를 전달했습니다. 구성 파일을 만들어 이 작업을 방지할 수 있습니다. uWSGI 서버는 다양한 형식의 구성을 읽을 수 있지만 . ini 형식을 사용하면 간단합니다. 한편, 당신은 http://example.com:8001 uwsgi 출력을 살펴하려고 할 수 있습니다 – 그러나 아주 아마, 브라우저가 http를 말하기 때문에 작동하지 않습니다, 하지 uWSGI, 당신은 터미널에서 uWSGI에서 출력을 볼 수 있지만. .json 파일로 작업하는 것은 구조와 는 별개로 위의 예제와 동일합니다. uWSGI 배포의 nginx 디렉토리에서 사용할 수 있는 uwsgi_params 파일이 필요하거나, uWSGI 옵션과 마찬가지로 https://github.com/nginx/nginx/blob/master/conf/uwsgi_params 자리 표시자에 액세스할 수 있어야 합니다. uwsgi.opt. 초기 uwsgi 프로세스를 마스터로 표시한 다음 여러 작업자 프로세스를 생성하려고 합니다.

기본적으로 uWSGI는 [uwsgi] 섹션을 사용하지만 구문 파일 이름으로 INI 파일을 로드하는 동안 다른 섹션 이름을 지정할 수 있습니다. 액세스.

This entry was posted in Uncategorized. Bookmark the permalink.

Comments are closed.