본문 바로가기
프로그래밍/C#_Blazor

[Blazor] 블레이저란? - 2 (blazor web app/ WebAssembly - 재정리)

by 뽀도 2024. 6. 23.

Blazor Web App(포괄적 용어)

  • Blazor Web App은 Blazor를 사용하여 개발된 웹 애플리케이션을 의미하며, 이는 Blazor WebAssembly와 Blazor Server 모두를 포함하는 포괄적 용어
  • 따라서, Blazor Web App은 두 호스팅 모델 중 하나를 사용하거나, 하이브리드 방식을 사용할 수도 있음

 

Blazor WebAssembly

 

동작방식

  • Blazor WebAssembly 애플리케이션은 클라이언트 쪽에서 실행
  • 애플리케이션은 WebAssembly를 통해 브라우저 내에서 .NET 코드를 실행함
  • 처음 로드될 때 필요한 모든 파일을 다운로드하고, 이후에는 브라우저에서 직접 실행됨

장점

  • 서버와의 연결이 필요하지 않아, 오프라인에서도 작동 가능.
  • 서버 부하가 줄어들어 서버 비용 절감 가능.
  • 클라이언트 자원을 사용하기 때문에 서버 리소스를 절약할 수 있어.

단점

  • 초기 로드 시간이 길어질 수 있어, 특히 큰 애플리케이션의 경우.
  • 브라우저에서 많은 로직을 실행하므로, 클라이언트의 성능에 영향을 받을 수 있어.

 

 

Blazor Server

 

동작방식

  • Blazor Server 애플리케이션은 서버에서 실행되고, UI 업데이트는 SignalR을 통해 클라이언트와 서버 간에 실시간으로 동기화
  • 클라이언트는 브라우저에서 최소한의 JavaScript를 실행하며, 대부분의 로직은 서버에서 실행

 

장점

  • 초기 로드 시간이 빠르고, 클라이언트 자원이 적게 소모돼.
  • 서버에서 실행되므로, 서버의 성능에 따라 애플리케이션 성능이 결정돼.
  • 서버에서 실행되기 때문에 보안과 데이터 보호가 더 용이해.

단점

  • 지속적인 서버 연결이 필요해, 연결이 끊어지면 애플리케이션이 작동하지 않음.
  • 서버 부하가 증가할 수 있음, 특히 많은 사용자가 동시에 접속하는 경우.
  • 서버 비용이 증가할 수 있음.

◈ 요약

  • Blazor WebAssembly: 클라이언트 쪽에서 WebAssembly를 통해 실행되며, 서버 연결 없이 독립적으로 작동 가능.
  • Blazor Server: 서버에서 실행되며, SignalR을 통해 클라이언트와 실시간으로 동기화, 빠른 초기 로드 시간과 서버 기반의 성능 제공.
  • Blazor Web App: Blazor를 사용하여 개발된 모든 웹 애플리케이션을 지칭하며, Blazor WebAssembly와 Blazor Server를 포함하는 포괄적 용어.

+ 그래서 Blazor Server를 통해 게임 운영툴을 만들 예정 

 

반응형

댓글