✅ 컨피그맵(ConfigMap)이란? Spring Boot에서는 설정값을 application.yml으로 분리해서 관리한다. Nest.js에서도 설정값을 .env으로 분리해서 관리한다. 별도의 파일로 분리를 해서 관리함으로써 유지보수가 편리해지고 개발
✅ DB 설계 전체 과정 많은 책들에서는 데이터베이스 모델링 방법이 아주 복잡하게 설명되어 있고, 정규화의 개념 조차 이해하기가 너무 어렵다. 쉽게 데이터베이스 모델링 하는 방법을 알려줄 것이다. 이 방식대로 모델링을 하다보면 자연스럽게 정규화 과정을
✅ 숨어있는 중복을 찾아라. 숨어있는 중복이 무슨 뜻인지 설명하기 위해 예시를 바로 보자. posts (게시글) users (사용자) likes (좋아요) 위 테이블의 구성에서는 임의의 데이터를 넣어봐도 중복 데이터가 발생하는 컬럼이 있진 않다. 하지
✅ 2가지 이상의 조건을 만족시키는 데이터를 조회하고 싶을 때 (bool : filter, must) 이전 강의에서 아래와 같이 쿼리를 했을 때 에러가 발생하는 걸 확인했다. GET /boards/_search { "query": { "te
✅ Spring Boot에서 여러 개의 컨슈머로 메시지 병렬적으로 처리하기 프로듀서, 컨슈머 서버 실행시키기 컨슈머 서버 로그 확인하기 API 요청 보내면서 컨슈머 서버 로그 확인하기 컨슈머 서버 추가로 띄우기 Consumer 서버 로그 확인하기 AP
✅ MSA의 핵심 특징 MSA는 다양한 특징을 가지고 있다. 그 중에서 가장 핵심 특징은 독립성이다. 아래 그림을 보면 결제에 관련된 기능, 인증에 관련된 기능, 상품에 관련된 기능을 독립적으로 분리해서 프로젝트를 구성했다. 이게 바로 MSA의 방식대
✅ k6란? 부하테스트 툴에는 다양한 툴이 있다. 그 중 유명한 부하테스트 툴에는 ngrinder, jmeter, ab, locust 등이 있다. 그 중 메모리를 적게 사용하면서 비교적 많은 요청 수를 보낼 수 있는 부하 테스트 툴이 k6이다. 또한
개발을 하다보면 에러를 디버깅하고 해결하는 데에만 대부분의 시간을 쓴다. 따라서 어떤 기술을 익힐 때 반드시 에러를 디버깅 할 수 있는 방법을 정리해두어야 한다. ✅ 파드(Pod)가 정상적으로 실행되지 않았을 때 매니페스트 파일 생성하기 파드 생성하기
✅ 게시글 서비스에서 Kafka로부터 ‘회원가입 완료 이벤트’ 구독하기 board-service에서 아래 코드 작성하기 User 엔티티 만들기 UserRepository 만들기 사용자 정보 저장 Service 로직 만들기 application.yml에
✅ 파드(Pod)로 띄운 프로그램에 접속이 안 되는 이유 도커에 대해서 공부했을 때는 컨테이너 내부와 컨테이너 외부의 네트워크가 서로 독립적으로 분리되어 있다. 하지만 쿠버네티스에서는 파드(Pod) 내부의 네트워크를 컨테이너가 공유해서 같이 사용한다.