Computer Programming/AI

TIL_Channels

JYCoder 2023. 12. 8. 10:14

기술적 의사 결정

채팅 기능:
실시간으로 AI와 메시지를 주고 받는 기능을 통해 영어 회화 능력을 향상시킬 수 있는 서비스

 

Channels

client와 server 사이의 실시간 양방향 *통신 및 비동기 처리가 능하도록 해주는 기능들을 모아놓은 library


    - WebSocket
        - 연결이 유지되는 동안 실시간 양방향 통신을 지원
    - * Redis와 연동
        - 데이터를 Cache memory에 저장하기 때문에 빠르게 메시지 전달이 가능
        - 여러 server에 분산시켜 관리하는 scale out 방식으로 많은 user의 handling이 가능
    - *redid server에 수평적 확장(scale out)이 용이하여 트래픽 상승 대비하여 유연하게 대응이 가능
        - 메시지를 전달하는 시스템으로, publisher(메시지를 보내는 사람)과 subscriber(메시지를 받는 사람) 사이의 message broker 역할을 함
    - Consumers
        - 채팅에 참여하는 각각 개인을 consumer instance라고 함
        - Redis의 Pub/Sub과 consumer instance와의 메시지 중개자 역할
        - WebSocketConsumer class: SebSocket 처리를 위한 기능 제공
            - 웹 소켓 연결/연결 해제
            - 데이터 송/수신 기능
            - overwritting을 통한 특정 동작 추가/재정의

LIST

'Computer Programming > AI' 카테고리의 다른 글

TIL_장바구니 비움과 주문 내역 저장  (1) 2023.12.08
TIL_PortOne을 이용한 결제 시스템  (1) 2023.12.06
TIL_Process Flow  (1) 2023.11.23
TIL_Decorator in Python  (1) 2023.11.21
TIL_When to use Redis?  (1) 2023.11.20