일반적인 응용 프로그램 (예 : Windows)에서는 개체/변수가 전역 수준에서 만들어지면 프로그램이 실행되는 전체 기간 동안 전체 프로그램에서 사용할 수 있습니다.파이썬에서 아파치/modwsgi 애플리케이션을위한 메모리 모델은 무엇입니까?
예를 들어 PHP로 작성된 웹 응용 프로그램에서는 모든 변수/객체가 스크립트 끝에서 삭제되므로 모든 것이 데이터베이스에 기록되어야합니다.
a) 그럼 apache/modwsgi에서 실행되는 Python은 어떻습니까? 그 기억은 어떻게 작동합니까?
b) 웹 페이지 요청간에 유지되는 객체를 어떻게 만들고 apache/modwsgi에서 스레드 문제가 발생하지 않도록 할 수 있습니까?
제가 미리 설치했거나 스레드 된 모드가 아파치 설치 및 구성에 달려 있다고 생각하거나 다른 것을 언급하고 있습니까? – confusionz
PRe-forked는 Python에서 선호되는 방법입니다. 스레드 설치를 할 수는 있지만 파이썬은 스레드를 좋아하지 않습니다. 긴 답변 : http://jessenoller.com/2009/02/01/python-threads-and-the-global-interpreterlock/ –
파이썬 웹 응용 프로그램 용 스레드를 사용하는 것이 좋습니다. 대부분의 경우 응용 프로그램이 I/O를 기다리는 데 막혀있어 GIL이 사람들이 쓴 문제가 아닙니다. GIL은 높은 CPU를 필요로하는 작업에 더 큰 해를 끼칩니다. http://blog.dscpl.com.au/2007/09/parallel-python-discussion-and-modwsgi.html 및 http://blog.dscpl.com.au/2007/07/web-hosting-을 읽어보십시오. landscape-and-modwsgi.html –