2012-11-30 2 views
-1

나는 클라이언트 사이트 (파일 변경을 감시하는 창 tkinter 클라이언트)의 변경 파일에서 읽은 일부 데이터를 전송하기 위해 클라이언트/서버 모델에서 작업하고 있습니다. 서버를 사용하여 데이터를 처리합니다 (데이터를 목록으로 분할하고 일부 데이터를 생성). 눈에 가장 좋은 해결책은 무엇입니까? 하나는해야 할 필요가있다 그래서 내가 보안을해야합니다 그래서 내가 클라이언트에 포함 된 인증서와 함께 일부 SSL 암호화를 포함하고 클라이언트에 포함됩니다. python이나 geent 또는 twisted와 같은 순수 소켓 프로그래밍을 사용해야합니까? 클라이언트는 감시 된 파일이 변경되었을 때만 연결하고, 데이터를 greps하고, 서버에 연결하고, 전송하고 연결을 끊습니다. 시간당 10 회 또는 하루에 10 번 발생할 수 있습니다. 실제로 계산할 수 없습니다.목록을 전송하기위한 최상의 파이썬 클라이언트/서버 솔루션

비슷한 문제에 대한 제안이나 경험이 있으십니까?

감사 데이브

UPDATE 참고 : 항상에만 1 개 서버 1 클라이언트가있을 것입니다!

업데이트 2 : 또한 그것은 단지 인증서의 한 부분을 가지고 클라이언트가 그래서 연결에서 다른 사람을 방지하기 위해이 특정 서버에 연결할 수있는 SSL 방식을 포함 할 수있다?

답변

1

HTTP를 통해 JSON을 사용하면 쉽게 사용할 수 있습니다. 원시 성능이 많이 필요하지는 않지만 JSON 및 HTTP 용 라이브러리는 모두 stdlib에 이미 포함되어 있습니다. SSL을 사용하여 클라이언트 인증서를 사용할 수 있습니다

http://docs.python.org/2/library/wsgiref.html#module-wsgiref.simple_server

하지만 수도 있도록하지 많은 사람들이 수행

아파치 또는 아무것도를 실행할 필요가 없습니다, 당신은 단지 파이썬 내에서 작은 웹 서버를 실행할 수 있습니다 설정하기 쉽지 않습니다. 대신 클라이언트가 요청에 포함해야하는 "비밀번호"로 충분히 큰 임의의 문자열을 선택할 수 있습니다. 모든 것을 원한다면 TOTP 일회용 암호를 사용할 수 있습니다.

+0

그래서 술병과 같은 것을 사용하여 SSL을 사용하는 작은 http 서버를 구축하고 json 데이터로 처리하는 것이 좋습니다. 것은 데이터가 CSV 데이터이며 나는 서버 측에서 올바르게 처리하고 클라이언트 측에서 수정하거나 올바르지 않게 처리하려고합니다. – dave

+0

웹 서버 뒤에있는 작은 웹 프레임 워크를 사용하여 ssl을 처리 할 수있는 옵션이 없습니다.이 서버의 Apache에 액세스 할 필요가 없습니다. – dave

+0

업데이트 해 주셔서 감사합니다. basehttpserver와 ssl을 통해 읽었지만 wsgi 제안을 주셔서 감사합니다. – dave

관련 문제