[Blazor] SignalR 이란?

참고


SignalR 란?

  • ASP.NET Core SignalR은 앱에 실시간 웹 기능을 추가하는 것을 간소화하는 오픈 소스 라이브러리입니다.
  • 실시간 웹 기능을 사용하면 서버측 코드에서 클라이언트에 콘텐츠를 즉시 푸시할 수 있습니다.
  • SignalR에 적합한 후보:
    • 서버에서 자주 업데이트해야 하는 앱. 예를 들어 게임, 소셜 네트워크, 투표, 경매, 지도 및 GPS 앱이 있습니다.
    • 대시보드 및 모니터링 앱, 예를 들어 회사 대시보드, 즉석 판매 업데이트 또는 여행 경고가 있습니다.
    • 공동 작업 앱. 예를 들어 화이트보드 앱 및 팀 회의 소프트웨어가 있습니다.
    • 알림이 필요한 앱. 소셜 네트워크, 이메일, 채팅, 게임, 여행 경고 및 다른 많은 앱에서 알림을 사용합니다.
  • SignalR은 서버-클라이언트 RPC를 만들기 위한 API를 제공합니다.
  • RPC는 서버 쪽 .NET Core 코드의 클라이언트에서 함수를 호출합니다.
  • ASP.NET Core 에 대한 SignalR의 몇 가지 기능은 다음과 같습니다.
    • 연결 관리를 자동으로 처리합니다.
    • 모든 연결된 클라이언트에 메시지를 동시에 보냅니다. 예를 들어 대화방이 있습니다.
    • 특정 클라이언트나 클라이언트의 그룹에 메시지를 보냅니다.
    • 늘어난 트래픽을 처리하도록 크기를 조정합니다.

전송

  • SignalR 에서는 실시간 통신을 처리하는 다음과 같은 기술을 지원합니다.
    • WebSocket
    • Server-Sent 이벤트
    • 긴 풀링
  • SignalR은 서버 및 클라이언트의 기능 내에서 가장 적합한 전송 방법을 자동 으로 선택합니다.

허브

  • SignalR은 허브를 사용하여 클라이언트와 서버 간에 통신합니다.
  • 허브는 클라이언트와 서버가 서로 메서드를 호출할 수 있도록 하는 높은 수준의 파이프라인입니다.
  • SignalR은 클라이언트에서 서버에 대한 메서드를 호출할 수 있도록 하고 그 반대의 경우도 가능하게 하는 컴퓨터 경계 간 디스패치를 처리합니다.
  • 강력한 형식의 매개 변수를 메서드에 전달하여 모델 바인딩을 사용할 수 있습니다.
  • SignalR 에서는 두 가지 기본 제공 허브 프로토콜인 ON 기반 JS의 텍스트 프로토콜과 MessagePack 을 기반으로 하는 이진 프로토콜을 제공합니다.
  • MessagePack은 일반적으로 ON에 비해 JS더 작은 메시지를 만듭니다. 이전 브라우저는 MessagePack 프로토콜 지원을 제공하기 위해 XHR 수준 2를 지원해야 합니다.

728x90

'웹 프로그래밍 > Blazor' 카테고리의 다른 글

[Blazor] 라우팅 및 탐색  (0) 2022.10.23
[Blazor] Layout  (0) 2022.10.22
[Blazor] 바인딩  (0) 2022.10.22
[Blazor] Blazor 앱 만들기  (0) 2022.10.21
[Blazor] Blazor 란?  (0) 2022.10.21

이 글을 공유하기

댓글

Designed by JB FACTORY