Nginx와 Gunicorn 뒤에 장고 프로젝트가 있습니다. 응용 프로그램 중 하나는 Paramiko를 사용하여 Exscript를 사용하여 네트워크 장치와 상호 작용합니다. 일부 장치는 Gunicorn 뒤에있을 때 제대로 작동하지 않습니다.gunicorn이 exscript/paramiko에서 문제를 일으킬 수 있습니까?
정확한 코드는 django-admin 쉘에서 정상적으로 작동합니다. django 서버가 내장되어 있으면 작동하지만 여전히 nginx를 거치지 않고 Gunicorn에 직접 연결하면 오류가 발생합니다.
나는 셀러 리 작업으로 기능을 옮겨 보았는데 똑같은 문제가 있었지만 Gunicorn에서만 발생했습니다.
명령 줄에서 작동하는 django-extensions를 사용하여 스크립트를 작성했지만 하위 프로세스를 통해 호출하면 실패합니다. 그러나 Gunicorn 뒤에서 만.
모두 실패하는 장치는 F5 LTM 인 것처럼 보이며 exscript 개체의 버퍼가 어떻게 든 수정되는 것처럼 보입니다. 추측해야만한다면 Gunicorn과 Exscript/Paramiko가 어떻게 든 서로 다른 메모리를 밟거나 Gunicorn이 Exscript가 실행중인 환경 변수를 설정하고 있다고 말할 수 있습니다.
어쨌든 나는 완전히 뒤죽박죽이며, 문제를 해결하는 방법에 대한 지침을 주시면 감사하겠습니다.
paramiko를 어떻게 설치 했습니까? OS 패키지가 있습니까? 핍? virtualenv를 사용합니까? 특정 gunicorn이 명령 행과 동일한 paramiko를 사용하고 있습니까? –
Parimiko는 pip와 함께 설치되었으며 gunicorn이 사용하는 virtualenv에서만 설치되었습니다. 그래도 좋은 생각. –
여전히 문제가 발생하는 경우 gunicorn에서 사용하는 [러너 유형] (http://gunicorn-docs.readthedocs.org/en/latest/run.html#commonlyused-arguments)에주의를 기울여야합니다. 당신이 실패했다고 말하면 정확히 무슨 일이 일어날 지 정교 할 수 있습니까? (예외, 프로세스 멈춤 등)? – tutuDajuju