2012-09-24 4 views
0
feed = feedparser.parse("http://someyoutubeurl") 
video_data = feed.entries[0] 
# Adding the data to a dict, etc... 

파이썬 명령 줄에 입력하면이 코드 줄이 즉시 실행되고 완료됩니다. 그러나 장고 웹 서버에 feedparser를 배포 할 때 프로세스는 말 그대로 10 초 정도 걸립니다. 뭔가 잘못 됐을거야.python의 feedparser 속도와 혼동되면 명령 행에서 매우 빠르지 만 im 배포시 느림

심지어 똑같은 youtube 비디오를 사용하여 테스트했는데 속도 차이는 여전히있었습니다!

아이디어가 있습니까? 감사합니다

+1

웹 서버에 sgmllib 모듈이 있습니까? 그렇지 않다면 (필연적으로, 이상하게 보일 것입니다.) 피드 파서는 순수 Python 구현으로 돌아가며 상당히 느립니다. –

+0

DNS에 문제가있을 수 있습니다. – Matthias

답변

1

나는이 대답으로 간주 잘 모르겠지만, 일반적으로 내가 보는 여러 가지 이유가 있습니다 :

  • 는 웹 서버의 하드웨어를 바탕으로 강력하지 않을 수도 있습니다 그렇게 다운로드 간단하게 분석, 더 오래 걸립니다. 가능한 경우 웹 서버 파이썬 셸에서 같은 코드 행을 시도하고 성능을 측정 할 수 있습니다. 다운로드는 주로 연결 속도에 달려 있으며 주로 CPU와 부분 RAM (피드 크기에 따라 다름)에서 파싱됩니다.

  • Django에서이 코드 줄을 실행하면 일반 Python 셸에서 if를 실행할 때보 다 약간 더 지연됩니다. 모든 동작이 장고 프레임 워크를 통과해야하기 때문에 간단합니다.

+0

웹 서버에서 동일한 코드 행을 실행했는데 매우 느립니다! 나는 webfaction을 사용하고 있습니다. sgmllib가 있는지 없는지는 모르겠지만 30 명의 다른 사람들과 서버를 공유하면 속도에 영향을 미칠 수 있습니다. –

+0

그래, Webfaction이 느려서 들었습니다. 결코 그것을 사용하지 마십시오. 당신의 위치가 다만 블로그 또는 무언가 간단하고 작은 그것의 아마 좋은 주인 인 경우에. –

+0

어, 나는 훨씬 더 빠른 것이 필요하다고 생각합니다. 어떤 제안이 있습니까? IIS7 윈도우 서버 2008 컴퓨터를 집에서 사용할 수 있습니다. (헬리콘 동물원이라고 불리는 일부 타사 소프트웨어를 사용하는 장고와 함께 작동합니다.) 그러나 회사와 호스트하는 것을 선호합니다. –