

ES 검색엔진을 활용한 상품 검색 — basic
상품 검색 성능 개선을 위해 ElasticSearch를 도입한 사례를 다뤘습니다. 인덱스 설계와 쿼리 점수 조정으로 검색 정확도와 노출 순서를 개선했습니다.
새로운 기술 블로그가 추가되었어요


상품 검색 성능 개선을 위해 ElasticSearch를 도입한 사례를 다뤘습니다. 인덱스 설계와 쿼리 점수 조정으로 검색 정확도와 노출 순서를 개선했습니다.

Apollo Client 무한스크롤을 `refetch`에서 `fetchMore`로 바꾸는 리팩토링 과정을 정리했습니다. 캐시 정책과 첫 페이지 예외 처리까지 함께 맞춰 페이징 문제를 해결했습니다.


GraphQL.js 리졸버의 마지막 인자인 `info`를 설명합니다. 현재 질의 정보를 담으며, 최적화나 복잡한 연결 처리에 활용할 수 있습니다.


GraphQL.js 리졸버의 세 번째 인자인 context를 설명했습니다. 매 요청마다 생성되며 같은 요청 내 리졸버가 상태를 공유하는 데 사용합니다.


GraphQL.js 리졸버의 두 번째 인자 `args`가 무엇인지 설명했습니다. 필드에 전달된 인자가 리졸버로 넘어오는 기본 동작을 다뤘습니다.


GraphQL.js 리졸버의 네 가지 인자 중 첫 번째인 source를 소개합니다. 리졸버 인자 구조를 이해하기 위한 기초 개념을 다룹니다.


GraphQL에서 리졸버가 클라이언트 요청에 맞는 데이터를 반환하는 핵심 역할을 맡는다고 설명했습니다. Java에서는 데이터 페처라고도 부르며, GraphQL 이해의 중심으로 정리했습니다.


GraphQL 스키마를 정의한 뒤 질의를 실행하고 결과를 받는 흐름을 다룹니다. 이전 글의 스키마 정의에 이어 실행 및 전송 단계를 소개합니다.
이 게시물은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.


GraphQL을 단순한 query 스펙으로 소개하며, 실제 제품에 적용하려면 여러 개념을 더 이해해야 한다고 설명했습니다. 첫 번째 주제로 스키마 정의를 다룰 예정입니다.

복잡한 React 상태를 Local State, Context + Hook, Redux로 나누어 관리한 경험을 공유했습니다.\nRedux의 보일러플레이트보다 상태 추적과 디버깅이 주는 장기 생산성을 재평가했습니다.


주문서 다중 수정에서 변경 덮어쓰기를 막기 위해 revision 검증과 비관적 잠금을 함께 적용했습니다. 품목 스냅숏과 JSONB 이력으로 과거 주문 내용과 변경 기록을 보존했습니다.


Jekyll 기술 블로그를 Gatsby 기반으로 전환한 배경과 설계·배포 과정을 정리했습니다. React 구조와 Plugin, Netlify로 개발·운영 편의성과 SEO를 강화했습니다.


MSW로 GraphQL·react-query 요청을 네트워크 수준에서 모킹하는 Jest 테스트 구성을 소개했습니다. 공통 렌더러와 핸들러로 응답별 UI를 검증하는 방법을 설명합니다.

GraphQL 스키마를 기반으로 Apollo Codegen에서 TypeScript 인터페이스를 자동 생성하는 방법을 소개했습니다. JSON 스키마를 분석해 프로젝트 요구에 맞는 생성 로직으로 확장하는 방향도 설명합니다.