Programming/C#

[.Net Framework] SignalR에 대해서 알아보자.

빙기때침식곡 2022. 3. 17. 21:46
반응형

1. SignalR
 - 실시간으로 웹 기능을 앱에 추가하는 것을 간소화 해준다.

 - Realtime, 비동기, 쌍방향 통신 기능을 쉽게 사용할 수 있게 해주는 오픈소스 라이브러리로 ASP.NET Core에 추가됨.

 - 서버로부터 빈번한 업데이트가 필요한 어플리케이션에 권장된다.

 - 서버 대 클라이언트 RPC를 위한 API를 제공한다.

 - RPC 통신은 서버측의 .NET Core 코드에서 클라이언트 상의 자바스크립트 함수를 호출한다.

 

2. RPC 통신

 - Remote Procedure Call의 약자

 - 서버에 만들어진 함수를 클라이언트에서 호출되는 방식으로 서버 측 API를 실행할 수 있다.

 - SignalR은 클라이언트에서 호출 가능한 서버의 함수 집합을 hub라고 부른다.

 - 클라이언트에서 Hub의 프록시 오브젝트를 만들어서 함수를 호출한다.

 

3. Hub

 - SignalR은 허브를 사용해서 클라이언트와 서버간 통신을 수행한다.

 - 허브는 클라이언트와 서버가 서로 존재하는 메소드를 호출할 수 있도록 해주는 고수준의 파이프라인이다.

 - Hub는 클라이언트의 메소드 이름과 파라미터를 담고 있는 메시지를 전송함으로써 클라이언트의 코드를 호출한다.

 - 메소드 파라미터로 전송되는 객체들은 구성된 프로토콜을 사용하며 역직렬화되어

클라이언트는 그 이름을 클라이언트 측 코드 안에 메소드와 매칭 시키려 시도한다.

 - 클라이언트가 일치하는 것을 찾으면, 그 메소드를 호출하고 역질렬화된 파라미터 데이터를 그 메소드에 넘겨준다.

반응형