2010-01-22 2 views
2

저는 파이썬으로 당분간 작업 해 왔습니다. 최근 Telnet, SSH 및 Message Passing을 배우기에 좋은 Twisted가있는 Sockets을 사용했습니다. 아이디어를 가지고 웹 방식으로 구현하고 싶었습니다. 한주 간의 검색과 내가 할 수있는 일은 GET과 POST를 모두 처리하는 리소스를 만드는 것입니다. 그리고 이것은 제가 나쁜 습관이라고 들었습니다.웹 서비스 및/또는 핸들링 GET 및 POST에 대한 파이썬 접근 방식

그래서 일주일 후 질문 :
* 토네이도 및 표준 Python 소켓과 같은 다른 옵션이 더 나은 (또는 더 인기가있는) 접근 방법입니까?
* Twisted GET 및 POST 작업에서 실제로 별도의 리소스를 사용해야합니까?
* Python Development의이 분야에서 시작하기에 좋은 자료는 무엇입니까?

내 배경 언어는 C, Java, HTML/DHTML/XHTML/XML이고 내 메인 시스템 (심지어 집)은 Linux입니다.

답변

1

웹 응용 프로그램을 빌드하기 위해 고유 한 웹 서버를 구축하고 원시 소켓 호출을 처리하지 않을 것을 권장합니다. 토네이도 또는 mod_wsgi가있는 아파치와 같은 웹 서비스를 wsgi 응용 프로그램으로 작성하고 기존 웹 서버를 사용하는 것이 훨씬 더 합리적입니다.

+0

감사합니다. 나는 당신이 그것을 언급 한 이래로 wsgi를 조금 읽었습니다. Zope, Google App, Django 및 TurboGears가 계획 한 인터페이스를 사용할 수 있는지 알아보기 위해 Zope, Google App, Django 및 TurboGears를 살펴보고 있습니다. 내가 충분한 대표자를 가졌다면 나는 당신을 투표 할 것입니다. 나는 그것을 약간 열어두고 누군가 다른 사람에게 추천이 있는지 살펴볼 것이다. –

+0

Google App는 클라우드 컴퓨팅이므로 할 수 없습니다. –

+0

Zope는 여기서 필요한 것 이상을 수행합니다. Django/TurboGears/Pylons는 원시 WSGI보다 더 멋지다. 왜냐하면 그들은 당신을위한 URL로 많은 것을 처리 할 것이기 때문이다. –

1

당신이하고있는 일이 API보다 더 많은 웹 사이트 인 경우 Django과 같은 일반적인 웹 프레임 워크를 사용하십시오.

+0

@ Wooble의 글을 통해 그 부분을 살펴 보았습니다. 그것은 대중적인 틀로 보인다. 추천 해 주셔서 감사합니다. 더 많은 자신감을 갖게 해줍니다. 난 뒤에서 많은 추세 및 분석 코드가 필요합니다. 타당한 데이터를 얻기 위해 다른 서버를 폴링 할 것입니다. 그래서 나는 그것을 많이 읽어야합니다. –

0

나는 다양한 점에 개별적으로 답변하려고 노력할 것입니다.

토네이도 및 표준 Python 소켓과 같은 다른 옵션이 더 나은 (또는 더 인기가있는) 접근 방식입니까?

WSGI 프레임 워크는 요즘 가장 인기있는 옵션입니다. 그들은 을 GETPOST 프리미티브에 액세스 할 수 있지만 충분한 구문 식 설탕 으로 신속하게 래핑하여 신속하게 탈락시킬 수 있습니다.

htt의 소켓을 다루는 사람은 거의 없습니다. 더 많은 대중적인 http 라이브러리 중 하나 인 requests은 처음에 urrllib2up until recently으로 싸여 있습니다.

Twisted GET 및 POST 작업에서 실제로 별도의 리소스를 사용해야합니까?

저는 트위스티드 개발자가 아니므로 말할 수 없습니다. 그것은 그 자체의 언어 인 것 같습니다.

파이썬 개발의이 분야에서 시작하기에 좋은 자료는 무엇입니까? GETsPOSTs을 처리하기위한

Webob 아마 시작하기에 좋은 장소입니다.

좀 더 자세한 내용을 보려면 webob은 WSGI ("whisky"와 함께 사용하는)에서 오는 기본 Python 기본 요소를 래핑합니다. WSGI는 CGI과 달리 웹 응용 프로그램과 서버 간의 인터페이스입니다.

PEP 3333 WSGI 표준을 정의한 문서는 http의 핵심에 관심이있는 경우 시작할 수있는 좋은 장소입니다.

스택에서 조금 더 낮아지면서 체크 아웃 할 가치가있는 WSGI 서버가 여러 개 있습니다. Google App EngineHeroku과 같은 클라우드 호스팅, PaaS (Platform-as-a-Service) 옵션이 세부 정보를 처리합니다. 반면에 gunicornTornado과 같은 특수한 wsgi 서버가 있습니다. 후자는 이미 익숙합니다.

물건을 얻으려면 Bottle, Flask, Django 또는 다른 훌륭한 Python 웹 프레임 워크를 확인하십시오.

+0

Python WSGI 응용 프로그램을 무료로 호스팅하려면 [Google App Engine] (http://code.google.com/appengine/) 체크 아웃을 적극 권장합니다. – mvanveen

관련 문제