.NET

SignalR 및 실시간

SignalR Hub, WebSocket, Server-Sent Events, 연결 관리, 확장, 성능

22 면접 질문·
Senior
1

SignalR에서 Hub란 무엇인가요?

답변

Hub는 서버와 연결된 클라이언트 간의 중앙 통신 지점 역할을 하는 클래스입니다. 서버에서 클라이언트 측 메서드를 호출하거나 그 반대로 호출할 수 있습니다. Hub는 연결, 연결 해제, 연결된 클라이언트 간의 메시지 라우팅을 자동으로 처리합니다. SignalR이 제공하는 Hub 클래스를 상속하며 클라이언트가 호출할 수 있는 공개 메서드를 노출합니다.

2

SignalR에서 강력한 형식의 Hub(strongly-typed Hub)를 만드는 방법은?

답변

강력한 형식의 Hub는 Hub<T>를 상속하며 여기서 T는 클라이언트 메서드를 정의하는 인터페이스입니다. 이를 통해 Clients.All, Clients.Caller 등을 통해 클라이언트 메서드를 호출할 때 IntelliSense와 형식 검사를 사용할 수 있습니다. 인터페이스는 서버가 클라이언트에서 호출할 수 있는 메서드의 계약을 정의합니다. 이 접근 방식은 컴파일 시점에 형식 문제를 잡아내어 런타임 오류를 줄여줍니다.

3

SignalR Hub에서 Clients.All과 Clients.Others의 차이점은 무엇인가요?

답변

Clients.All은 호출을 트리거한 클라이언트를 포함하여 연결된 모든 클라이언트에 메시지를 보냅니다. Clients.Others는 호출하는 클라이언트를 제외하고 다른 연결된 클라이언트에만 메시지를 보냅니다. Clients.Others를 사용하는 것은 발신 클라이언트가 자신의 메시지를 받을 필요가 없는 알림 브로드캐스트와 같은 시나리오에서 유용합니다. Clients.Caller는 호출하는 클라이언트에만 보낼 수 있습니다.

4

클라이언트의 일부에게 메시지를 보내기 위해 SignalR에서 그룹을 관리하는 방법은?

5

SignalR이 지원하는 전송 방식은 무엇이며 어떤 순서로 협상되나요?

+19 면접 질문

다음 면접을 위해 .NET을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기