카
카카오엔터테인먼트FE
July 15, 20241회
파일 변수 Deep-Dive
간단 소개
파일 변수의 개념과 클라이언트/서버 환경에서의 활용법, 주의사항 및 환경에 구애받지 않고 파일 변수를 다루는 방법을 설명한다.
AI Summary
- 파일 변수의 정의 및 클라이언트 사이드 활용
- 파일 변수는 모듈 범위 전역 변수로, 특정 파일 내에서만 접근 가능한 변수이다.
- 클라이언트 사이드에서 Redux 없이 유저 환경 정보와 같이 추적 불필요한 상태 관리에 유용하다.
- 싱글턴 패턴을 활용하여 최초 참조 시점에 값을 초기화할 수 있다.
- 클라이언트 사이드 사용 시 유의점 및 서버 사이드 활용
- SSG 페이지에서는 클라이언트 사이드 파일 변수 활용이 불가능하며, Hard Navigation 시 파일 변수 값이 초기화된다.
- Document 객체의 모듈 맵 덕분에 한 번 임포트된 모듈은 가비지 컬렉션 대상이 되지 않는다.
- 서버 사이드에서는 파일 변수가 모든 유저에게 공유되므로 AsyncLocalStorage를 사용하여 각 유저에게 독립적인 컨텍스트를 제공해야 한다.
- 환경에 상관없이 파일 변수 다루기
- 클라이언트와 서버에서 모두 사용할 파일 변수를 정의하고, UserAgent 클래스를 통해 클라이언트와 서버의 isMobile 값을 각각 관리한다.
- Next.js의 _document를 활용하여 서버 값을 클라이언트에 넘겨주고, 클라이언트에서는 해당 값을 참조하여 파일 변수를 초기화한다.
Next Feeds

은행에서 AI를 private하게 사용하는 방법 (feat. Azure)
카카오뱅크의 Azure OpenAI 도입 및 아키텍처 구축 사례, 보안 및 규제 준수, 로그 파이프라인 구축 과정을 설명합니다.
AzureOpenAI클라우드보안아키텍처
2024. 7. 11.
카카오뱅크
Redis Stream 적용기
G마켓의 Redis Stream 적용 사례를 통해 Redis Stream의 특징, 개발 과정, 고려 사항 및 효과를 소개합니다.
Redis StreamG마켓데이터 파이프라인트래픽 처리메시지 큐
2024. 7. 11.
지마켓

RDS Proxy!! Maxscale 오픈소스 전환
롯데ON은 RDS Proxy에서 Maxscale로 전환하여 Aurora 밸런싱 문제 해결, 비용 절감, MySQL 성능 개선을 이루었습니다.
RDS ProxyMaxscaleAuroraMySQL밸런싱
2024. 7. 11.
롯데ON
UDS 프로토콜이란 무엇인가
UDS 프로토콜은 차량 진단, ECU 관리, 소프트웨어 업데이트 등 자동차의 전반적인 유지보수에 필수적인 기술입니다.
UDS프로토콜차량진단ECUISO 14229
2024. 7. 10.
현대자동차
마이데이터 플랫폼의 대용량 데이터 처리 개선! 구경 한번 해볼래?
카카오페이 마이데이터 플랫폼의 대용량 데이터 처리 개선 사례를 통해 QPS, 용량, 통계 문제 해결 과정을 제시합니다.
마이데이터대용량 데이터샤딩Palsonic데이터 백업
2024. 7. 10.
카카오페이

Snowflake Connector(Python)용 AWS Lambda Custom Layer
Snowflake Connector를 AWS Lambda에서 사용하기 위한 Custom Layer 생성 및 설정 방법을 설명합니다.
SnowflakeAWS LambdaCustom LayerPython ConnectorServerless
2024. 7. 8.
메가존클라우드