2023-06-26 TIL

0v0baek·2023년 6월 26일
1

TIL

목록 보기
83/92

[Django] channels에서 routing과 consumer

channels로 웹소켓 서버를 만들다보면
우리가 기존에 잘 알던 views.py, urls.py외에도
새롭게 routing.py, consumers.py를 사용하게 된다.

이 둘의 차이가 헷갈려서 정리해보려고 한다.

urls.py와 routing.py

  • urls.py
    URL 패턴을 정의
    해당 URL에 대해 어떤 view 함수를 실행할지 결정
    일반적인 HTTP 요청과 관련된 URL 라우팅을 처리

  • routing.py
    웹소켓 연결 및 다른 프로토콜 연결을 처리
    웹소켓 연결을 통해 들어오는 메시지 및 이벤트를 처리할 컨슈머를 지정
    웹소켓 프로토콜과 관련된 URL 라우팅을 처리

views.py와 consumers.py

  • views.py
    일반적인 HTTP 요청을 처리하는 뷰 함수 또는 클래스를 정의
    클라이언트의 HTTP 요청을 받아 처리 후 해당 요청에 대한 응답을 반환
    주로 HTML 페이지를 렌더링하거나 JSON 데이터를 반환하는 작업 처리

  • consumers.py
    웹소켓 연결 및 다른 프로토콜 연결을 처리하는 컨슈머를 정의
    클라이언트와 서버 간의 양방향 통신을 처리
    웹소켓 연결을 통해 들어오는 메시지 및 이벤트를 처리
    비동기적으로 작동

profile
개발 공부 하는 비전공자 새내기. 꾸준히 합시다!

0개의 댓글