entgo 3편. Edges로 1:1, 1:N, N:M 관계를 설계하는 법
entgo 공식 문서를 바탕으로 edge.To, edge.From, Unique를 중심으로 1:1, 1:N, N:M 관계 설계와 edge field, required, immutable을 정리합니다.
총 9개의 포스트
entgo 공식 문서를 바탕으로 edge.To, edge.From, Unique를 중심으로 1:1, 1:N, N:M 관계 설계와 edge field, required, immutable을 정리합니다.
entgo에서 Optional과 Nillable의 차이를 중심으로 필드 설계의 핵심 옵션들을 공식 문서 기반으로 정리합니다.
entgo를 처음 볼 때 필요한 관점 정리. 스키마, edge, 코드 생성, 마이그레이션 흐름을 중심으로 entgo의 mental model을 설명한다.
GraphQL N+1 문제를 해결하는 DataLoader 패턴을 표준 라이브러리만으로 구현한다. batch, dedup, cache, request-scope까지 동작 원리를 코드로 정리한다.
매 요청마다 전체 정렬을 반복하던 리더보드를 Redis 캐시로 바꾼 과정. ID 캐시 + hydration + singleflight + 카테고리 단위 무효화까지 단계별로 정리한다.
Go가 다른 언어와 다른 이유 두 가지. 고루틴은 동시성을 단순하게 만들고, 인터페이스는 결합을 느슨하게 만든다. 이 둘을 제대로 쓸 줄 알면 Go답게 코드를 쓸 수 있다.
TS 6.0 breaking changes 정리, Go 리라이트(Project Corsa)의 배경과 리스크, 실용적 업그레이드 체크리스트까지.
ent ORM과 gqlgen을 entgql로 연결해서 GraphQL API를 코드 생성 기반으로 구축하는 방법. Relay Connection 패턴까지.
Go로 마이크로서비스를 설계할 때 고려해야 할 통신, 이벤트, 인증 아키텍처와 각각의 트레이드오프