• 카테고리

    질문 & 답변
  • 세부 분야

    웹 개발

  • 해결 여부

    미해결

Grid 컴포넌트 사용에 대해서 질문있습니다.

24.01.24 12:18 작성 조회수 111

1

  • asp.net 의 WebForm 에서도 DataGrid, DataList, Repeator 등이 있었습니다.
    DataGrid, DataList 는 기능이 많아 보이지만, 기능이 많은 것만큼 렌더링 된 데이터의 사이즈가 너무 커져서
    실무에서는 속도 문제로 결국 html 태그를 적극 활용하면서 Repeator를 사용했었습니다.

    혹시 QuickGrid , RadzenGrid 등도 그런 문제가 발생하는 것은 아닐까 해서요...
    샘플로 작성되는 weather 페이지처럼 html 태그가 결국 사용되는게 아닐까 싶은데요...
    결국은 모든 데이터를 다 조회해서 갖고 있는게 아니라, 해당 페이지에 대한 데이터만 갖고,
    페이징 네비게이션 부분은 별도로 코딩하게 된다면...그리드의 정렬, 필터 기능은 사용 못하는게 아닐까 싶습니다.

    혹시 속도 비교를 해 놓은 것이 있는지 궁금합니다.
  • 제가 아직 WASM 방식과 서버 방식을 잘 이해를 못하고 있는데요,
    제가 기존에 했었던 방식(asp.net webform, mvc)은 서버 방식이었을 것으로 이해하고 있습니다.
    WASM 방식이 된다면 Grid 사용이 달라지는 건가요???

답변 2

·

답변을 작성해보세요.

1

stone님 안녕하세요!

답변 드리려고 했는데 AI 인턴 요녀석 뭐죠...?ㅎㅎ

 

우선 답변 드리자면,

  1. 속도 비교한 자료는 없습니다ㅠ

  2. 데이터가 진짜 많으신가 보네요.. 데이터양 많아지면 렌더링 속도 저하되는건 모든 그리드 컨트롤에 해당되는 얘기라 QuickGrid나 RadzenGrid도 동일하지 않을까 싶습니다.

  3. Grid 사용은 같은데 작업 수행을 서버에서하냐 클라이언트(WASM)하냐의 차이입니다. 사견이지만..... 대용량 데이터 처리 + 렌더링 필요한데 사용자와 인터렉션까지 있으면 그럴 때마다 서버랑 통신하고 데이터 주고받으려면... 아무래도 WASM방식이 조금 더 빠르지 않을까요? WASM은 초기에 로드만 해놓으면 서버 통신 없이 클라이언트에서 수행하니까요.. 흠 저도 궁금하네요..!

     

나머지 질문들도 곧 답변 드리겠습니다!

 

stone님의 프로필

stone

질문자

2024.02.05

답변 감사합니다.

1

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.01.26

안녕하세요, 인프런 AI 인턴입니다.

stone님, Blazor Server에서 Grid 컴포넌트 사용과 관련하여 궁금증을 해소해드리고자 합니다.

  • QuickGrid, RadzenGrid와 같은 컴포넌트들도 렌더링 때 데이터의 크기가 커져 성능 문제를 일으킬 수 있습니다. 실제 사용 시 성능을 고려해야 하며, 필요에 따라 페이징 처리, 데이터 가상화, 지연 로딩과 같은 전략을 사용하여 성능을 최적화할 수 있습니다. 또한 Blazor는 서버 사이드와 클라이언트 사이드(WASM) 렌더링을 모두 지원합니다.

  • 속도 비교에 대한 자료는 제가 그 데이터를 보유하고 있지 않기 때문에, 구체적인 성능 비교 결과를 제공해 드릴 수 없습니다. 직접 비교를 해보거나, 커뮤니티 사이트에서 관련 내용을 참고하는 것이 좋겠습니다.

  • Blazor WebAssembly(WASM) 방식과 서버 방식은 애플리케이션의 로직이 실행되는 위치에 차이가 있습니다. WASM 방식은 브라우저 내에서 .NET 어셈블리를 실행시키고, 서버 방식은 서버에서 모든 처리를 담당하며, UI 이벤트와 상태는 SignalR을 통해 클라이언트와 서버 간에 통신합니다. 따라서 Grid 사용 시에도 서버 방식은 네트워크 지연등의 영향을 고려해야 하며, WASM 방식은 클라이언트 리소스를 사용하기 때문에 서로 다른 성능 상의 고려 사항이 있을 수 있습니다.

고급 기능을 갖춘 Grid 컴포넌트를 사용할 때는 개발의 편리함과 성능 사이의 균형을 찾는 것이 중요하며, 구체적인 상황에 맞게 적절한 기술 선택이 필요합니다. 필요한 데이터와 기능에 초점을 맞추어 사용하시면 좋을 것 같습니다.