pile·
프론트엔드·SK플래닛SK플래닛·

Chat DIC - 대화형 LLM 서비스의 프런트엔드 성능 개선기

문제대화형 LLM 서비스에서 비활성 탭 전환 시 브라우저 Throttling으로 스트리밍 렌더링이 지연되고, 대화가 누적될수록 DOM 노드 증가로 성능이 저하됐다.
접근SSE + Fetch API + ReadableStream으로 실시간 스트리밍 구현. visibilitychange 이벤트로 비활성 탭 감지 후 Buffer에 임시 저장하고 활성 시 일괄 처리. react-window Windowing으로 화면에 보이는 요소만 렌더링했다.
결과탭 전환 시 스트리밍 데이터 손실 없이 안정적 처리. DOM 노드 수를 일정하게 유지해 대화가 길어져도 렌더링 성능을 안정화했다.
SK플래닛
SK플래닛 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 프론트엔드·여기어때 (GC컴퍼니)여기어때 (GC컴퍼니)·

    항공 프론트엔드 구축기 (7/10): 창구를 하나만 두었습니다

    여기어때 항공 서비스 프론트엔드가 웹과 앱 웹뷰 두 환경에서 동일한 함수 호출로 동작하는 앱 브릿지 추상화 레이어를 설계한 과정을 다룬다. iOS·안드로이드 규약 차이와 "웹에 존재하지 않는 브릿지를 어떻게 호출하나"라는 문제를 단일 추상화 층으로 해결한 구현 사례다.

    요약 이어보기
    #react#typescript#webview+2