inblog logo
|
sxias
    Others

    1. 웹 소켓

    문정준's avatar
    문정준
    Jun 25, 2025
    1. 웹 소켓
    Contents
    Socket

    Socket

    • OS에 탑재되어 통신을 가능하게 함
    • 소켓 통신 : 가장 가볍고 간단하고 빠르지만 보안에 취약
     

    통신 종류

    • 단방향 통신 : Simplex
    • 반이중 통신 : Half-duplex
    • 전이중 통신 : Full-duplex
      • Push 알림을 할 수 있는 통신은 전이중 통신
     

    Push 구현

    • Socket : 통신 유지
    • HTTP : 통신 종료
    • SSE (Server-Sent Event) : 요청 통신만 종료 → 서버 측에서 일방적인 응답만 전달
    notion image
     

    구독

    • 각종 센서가 서버에 측정 값에 따른 Flag 신호를 보내면, 서버에서 전등 또는 공기청정기를 작동
    • 전등, 공기청정기를 작동 시키기 위해서는 서버 측에서 Push를 보내주어야 함
      • 이는 센서와의 지속 통신이 필요
    • 서버에 채널을 개설해서 조도를 관리하는 채널, 대기 상태를 관리하는 채널을 각각 구독시키면 다른 장치가 추가 되어도 편리하게 상태 관리가 가능
      • 새 채널이 필요할 경우 해당 센서와 서버 내 채널 간의 통신을 만들고, 새 기기는 해당 조건에 맞는 채널을 구독하면 상태 변화를 서버에서 바로 확인 가능
    notion image
     

    Broker

    • Simple Broker 및 Command Broker를 활용하여 클라이언트가 구독을 통해 메시지를 실시간으로 받을 수 있음
        1. 클라이언트가 특정 주소를 구독
        1. 다른 클라이언트에서 해당 주소에 메시지를 담아 요청
        1. 구독하는 Broker 종류에 따라 통신 방법이 3가지로 구분
          1. 클라이언트가 Simple Broker 호출 → 해당 주소를 구독 중인 클라이언트에게 바로 응답
          2. Command Broker가 서버의 Controller 호출 → Controller가 Simple Broker 호출 → 응답
          3. 클라이언트가 직접 Controller 호출 → Controller가 Simple Broker 호출 → 응답
    notion image
     
    Share article
    Contents
    Socket

    Sxias ㆍ a32176740@gmail.com

    RSS·Powered by Inblog