Q & A

시삽: 레드플러스 님 
게시판 이동:
 제목 : Re : 안녕하세요. 데브렉에서 강의듣고 있는 학생이에요!
글번호: 954
작성자: 레드플러스
작성일: 2021/08/09 오전 12:12:00
조회수: 1625

 

안녕하세요.

 

채팅과 같이 실시간 양방향 통신을 하는 웹앱을 구축할 때에는

 

원본 기술인 웹 소켓을 사용하던가, SignalR과 같은 기술을 사용하여 편리하게 구축이 가능합니다.

 

gRPC는 Web API를 만들 때 도움이 되는데요.

 

gRPC와 ASP.NET Web API가 같은 식으로 API를 구현할 때 사용됩니다.

 

실시간: Web Socket, SignalR, ...

REST: ASP.NET Core Web API, gRPC

 

여기서, Web API는 JSON으로 데이터를 주고 받지만, gRPC는 바이너리로 데이터를 주고 받기에 속도면에서 월등하게 gRPC가 성능이 좋습니다.

 

다만,

 

ASP.NET Core 3.0 소개 관련 강의를 진행할 때 gRPC를 ASP.NET Core 3.0에서 편하게 사용할 수 있는 주제로 다뤘지만,

 

그 이후로, 국내에서 닷넷 분야에서 gRPC를 사용하는 부분을 따로 만나보질 못했습니다.

 

심지어는 한국 마이크로소프트 쪽에서도 gRPC를 다루는 분은 못 본 것 같습니다.

 

정리해보면,

 

gRPC는 REST처럼 Web API와 비슷한 형태의 이기종간의 데이터를 주고 받는 시스템을 구축할 때 사용하고,

SignalR은 채팅과 같은 실시간 양방향 통신을 구현할 때 사용합니다.

 

그래서, 실시간 처리를 위한 시스템 구축을 위한다면,

웹소켓 또는 SignalR을 사용하고,

 

Web API 서비스를 위한다면, gRPC 또는 Web API를 사용하면 좋을 것 같습니다.

 

참고로, 강의에서는 gRPC도 닷넷 3.0 이후로는 편하게 사용할 수 있습니다의 관점으로 사용했지,

실제 서비스 구현은 성능은 조금 떨어지지만, 많은 호환(지금까지 많이 사용하고 있는)을 위해서 ASP.NET Core Web API를 중점으로 사용합니다.

 

감사합니다.

 

 

 


On 2021-08-08 오전 12:50:00, '조은현' wrote:

 

 


안녕하세요!
Blazor 강의를 듣는 중에 궁금한게 생겨서 강의를 중간에 쉬면서(?) 며칠 밤새가며 실시간 웹 서비스를 구축해보고 있는데요!

처음 강의 소개에서 소개해주신 Grpc를 바탕으로 서버를 구축하고 있는 도중 Signal-R이 더 적합할 수 있다는 Microsoft 문서를 보게 되었습니다.

제가 하고 싶은 것은 DB의 Table 값을 서버에서 0.1초마다 받아와 이것을 Streaming하여 Client 측에 보여주고 싶은 것인데요.

선생님께서 예전(2014년 정도)에 Signal-R의 양방향 통신에 대해서 강연을 진행하셨더라구요.

또 현재 Blazor 강의에서 제공한 pdf파일을 보면 제가 올린 사진과 같이 GRPC를 이용하시는 것을 볼 수 있는데 Signal-R 대신 GRPC를 이용하신 이유를 알 수 있을까요?

Signal-R과 GRPC의 차이점과 어떠한 상황에서 이 둘을 구분해서 사용해야 할지 알고 싶습니다.

 
이전 글   다음 글 삭제 수정 답변 글쓰기 리스트

(댓글을 남기려면 로그인이 필요합니다.)

관련 아티클 리스트
  제       목 파일 작성자 작성일 조회
이전글 선생님 좋은 답변 감사드립니다! 이미지.zip(148 KB) 조은현 2021-08-09 1788
  안녕하세요. 데브렉에서 강의듣고 있는 학생이에요! 이미지 116.png(38 KB) 조은현 2021-08-08 1765
현재글 Re : 안녕하세요. 데브렉에서 강의듣고 있는 학생이에요! - 레드플러스 2021-08-09 1625
다음글 개발 후 서버에 적용할 때는 어떻게 해야하나요? - 맑은하늘 2021-07-22 1774
 
손님 사용자 Anonymous (손님)
로그인 Home