django 질문 좀 드리겠습니다. 외부와 소켓통신을 하는 장고서버를 구현중입니다. 요청이

 
Myunghun Cha

django 질문 좀 드리겠습니다.
외부와 소켓통신을 하는 장고서버를 구현중입니다. 요청이 꽤 많아서 소켓통신 부분 성능 개선을 위해 gevent를 적용 하려고 리서치 중, geventconnpool이라는 라이브러리를 발견하여 적용하였습니다. 통신부분만 테스트해보면 잘 돌아가고 성능도 많이 개선이 되었는데, 장고에 붙이면 문제가 생기네요. monkey patch를 해 보아도 “This operation would block forever” 이라는 exception이 계속 뜹니다. 전체적인 아키텍쳐를 잘못잡고있는건지 도움 부탁들비니다.

  • Chinseok Lee

    gevent pool 은 django process 외부로 빼야 되지 않을까요. // 외부 프로세스로 빼고, zeromq 로 django process 와 통신하는 방법은 어떨까요.

    Chinseok Lee

    lock 이 2번 걸려서 “The operation would block forever” 예외가 발생한다는 글이 있긴 하던데, 그 부분은 잘 모르겠군요.

    Myunghun Cha

    아아 해결했습니다! Monkey patch 하는 시점이 잘못된거였어요. Manage.py 첫줄에 넣으니까 잘되네요. 감사합니당.

Advertisements