post-thumbnail

DB Replication + CQRS 패턴 적용

DB Replication + CQS 패턴 적용

2022년 8월 10일
·
1개의 댓글
·
post-thumbnail

동시성 문제 해결하기 V3 - 분산 DB 환경에서 분산 락(Distributed Lock) 활용

동시성 문제, 분산 락, Distributed Lock

2022년 8월 2일
·
9개의 댓글
·
post-thumbnail

동시성 문제 해결하기 V2 - 비관적 락(Pessimistic Lock)

동시성 문제, 비관적 락, Pessimistic Lock

2022년 7월 27일
·
0개의 댓글
·
post-thumbnail

동시성 문제 해결하기 V1 - 낙관적 락(Optimistic Lock) feat.데드락 첫 만남

낙관적락, 동시성 문제, Optimistic Lock

2022년 7월 25일
·
5개의 댓글
·
post-thumbnail

이벤트 기반, 서비스간 강결합 문제 해결하기 - ApplicationEventPublisher

서비스간 강결합 문제 해결, ApplicationEventPublisher

2022년 7월 22일
·
0개의 댓글
·
post-thumbnail

[JWT] 세션 의존성 제거하기 - 커스텀 어노테이션 활용

토큰 기반 인증 방식으로 소셜 로그인 및 회원가입 기능을 구현했다.그런데 구현하고 보니, 토큰을 세션에 저장하고 세션에서 해당 토큰을 꺼내서현재 로그인한 사용자를 가져오도록 구현을 했다.세션 기반 인증방식의 문제점을 해결하기 위해 토큰 기반 인증방식이 등장했는데, 두

2022년 6월 6일
·
0개의 댓글
·
post-thumbnail

[AWS] ALB 및 HTTPS 프로토콜 적용하기

AWS ALB 적용, HTTPS 프로토콜 적용

2022년 5월 29일
·
1개의 댓글
·
post-thumbnail

리팩토링 - 객체의 null 체크시 == 연산자를 직접 사용하는게 좋은가?

== 연산자를 이용한 방법과, Objects.isNull() 을 이용한 방법 두 가지를 혼용해서 사용하고 있었다.둘이 어떤 차이가 있고 어떤 방법이 베스트 프랙티스일지 생각해보자.String은 아래에서 따로 정리한다.설명할게 없다. 해당 객체가 null인지 판단한다.내

2021년 12월 9일
·
0개의 댓글
·
post-thumbnail

Jenkins fetch 에러

CI/CD 구축을 정상적으로 마치고, 며칠동안 리팩토링 후 배포를 시도했는데아래와 같이 Jenkins에서 에러가 났다.git 저장소에 있는 코드를 fetch 해오지 못한다.Caused by: hudson.plugins.git.GitException: Command "g

2021년 12월 7일
·
0개의 댓글
·
post-thumbnail

GitHub Action으로 Jenkins에 요청보내기

URL에 /github-webhook/ 부분을 빼먹으면 안된다. 슬래쉬 하나라도 빠지면 오류난다.deploy → 구성 → 소스코드관리 → Git 선택 후 저장소 추가 deploy → 구성 → 빌드 유발 → GitHub hook ~ 체크 빌드 후 조치에

2021년 12월 6일
·
0개의 댓글
·

Jenkins로 배포 자동화 - CD

AWS Marketplace 탭에서 검색해야 검색된다.Centos 7 이미지를 선택하자.새 키 페어를 생성후 다운받고 잘 보관하자.다운받은 .pem 파일을 이용해 .ppk파일을 만들어야 한다.putty key henerator 툴을 이용했다.(Mobaxterm

2021년 12월 5일
·
0개의 댓글
·
post-thumbnail

GitHub Action으로 빌드 자동화 - CI

deploy.yaml 빌드 후 Docker image를 생성해서 지정된 Docker Hub 저장소에 이미지를 push 하도록스크립트에 추가했다. 이를 위해서 필요한 작업들이 있다.저장소는 디폴트가 퍼블릭Collaborators 탭에서 사용자 추가해줘야, 다른 사용자도

2021년 12월 5일
·
2개의 댓글
·
post-thumbnail

Jasypt 사용법 - 프로퍼티 파일 암호화

프로퍼티 파일에 노출되는 중요 정보들을 암호화 해주는 라이브러리예로 프로퍼티 파일에서 DB password 라던지 aws의 secret-key 등을 암호화 하는데 사용한다.build.gradle프로젝트 내부에 자바파일에다가 비밀번호를 하드코딩하게되면 암호화 한 값들이

2021년 12월 4일
·
0개의 댓글
·
post-thumbnail

RabbitMQ 도입과 캐싱 처리하기

여기서 포트를 두 개 열었는데5672 포트는 RabbitMQ와 통신하기 위한 포트이고,15672 포트는 모니터링 툴을 사용하기 위한 포트이다.로컬에 해당 이미지가 없어도 Docker hub에서 알아서 가져와 컨테이너를 만들어준다.15672 포트로 접근하여 usernam

2021년 7월 17일
·
0개의 댓글
·
post-thumbnail

Message Queue란

해당 내용은 Class101의 현직 대기업 개발자 푸와 함께하는 진짜 백엔드 시스템 실무! 강의를 기반으로 작성했습니다.Message Queue를 이해하기 위해서는 우선 톰캣이 요청을 어떻게 처리하는지 알아야한다.요청이 들어오면 톰캣 내에 있는 큐에 들어가게 되고, 먼

2021년 7월 17일
·
0개의 댓글
·
post-thumbnail

Branch로 작업 후 Merge 하는 과정, GCP 인스턴스에 배포

해당 내용은 Class101의 현직 대기업 개발자 푸와 함께하는 진짜 백엔드 시스템 실무! 강의를 기반으로 작성했습니다.io bound 애플리케이션에 페이징, 검색 기능 개발commit - push - PR - Mrege 과정 이해새 기능을 개발하는 과정이다. sour

2021년 7월 16일
·
0개의 댓글
·
post-thumbnail

I/O bound 애플리케이션 배포

해당 내용은 Class101의 현직 대기업 개발자 푸와 함께하는 진짜 백엔드 시스템 실무! 강의를 기반으로 작성했습니다.DB를 이용한 한줄 게시판 애플리케이션 포크 후 코드 이해Postman을 이용해 API 테스트GCP 인스턴스에 애플리케이션 배포저장소를 포크하고 프로

2021년 7월 16일
·
0개의 댓글
·
post-thumbnail

I/O bound 애플리케이션 서버를 늘리면 성능이 향상될까?

해당 내용은 Class101의 현직 대기업 개발자 푸와 함께하는 진짜 백엔드 시스템 실무! 강의를 기반으로 작성했습니다.CPU bound 애플리케이션과 I/O bound 애플리케이션의 차이에 대해 이해하기I/O의 종류별로 서버를 늘려 애플리케이션의 성능을 올릴 수 있는

2021년 7월 15일
·
0개의 댓글
·
post-thumbnail

쿠버네티스(Kubernetes) 개념

해당 내용은 Class101의 현직 대기업 개발자 푸와 함께하는 진짜 백엔드 시스템 실무! 강의를 기반으로 작성했습니다.Docker와 컨테이너에 대한 개념이 없다면 이전 글을 참고하자.젠킨스를 통해 여러 컨테이너들을 다루는데 빌드, 배포에 필요한 모든 명령어를각 컨테이

2021년 6월 15일
·
0개의 댓글
·