일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- Kubernetes
- mirror maker2
- mysql
- Spring Data JPA
- CI
- spring kafka
- producer
- Streams
- git
- topic생성
- QueryDSL
- PAGING
- ECS
- JPA
- transactionaleventlistener
- offsetdatetime
- Entity
- consumer
- kafka
- centos7
- spring
- bean
- AWS
- Kotlin
- entity graph
- cd
- Spring JPA
- K8s
- CodePipeline
- API
- Today
- Total
목록전체 글 (101)
Yebali

최근 회사에서 On-Premise 환경에서 애플리케이션을 배포하는 일이 많아졌습니다. 클라우드 환경과는 달리, 직접 서버에 환경을 구성하고 Docker를 설치하는 일이 빈번해졌죠. 매번 Docker 설치 방법을 검색하는 것도 번거롭고, 동료들에게 가이드를 제공할 겸 블로그에 정리해 두기로 했습니다. 이번 글에서는 많이 사용되는 두 가지 리눅스 배포판, Ubuntu와 RHEL(Red Hat Enterprise Linux) 에 Docker를 설치하는 방법을 소개합니다. Ubuntu에 Docker 설치하기Ubuntu는 apt 또는 apt-get이라는 패키지 관리 도구를 사용합니다. Docker 설치를 위해 필요한 저장소 설정 및 패키지 설치 과정을 단계별로 정리했습니다.# 패키지 인덱스를 업데이트합니다.sud..
Spring event란 스프링에 데이터를 전달하는 방식 중 하나로메서드를 직접 호출하는 것이 아니라 이벤트를 발행(Publish)하고 수신(Listen)하는 형태로 사용됩니다. 이런 방식을 사용하면 모듈 간 의존성이 낮아지고 관심사를 분리할 수 있다는 단점이 있습니다. 구현하는 방법은 일반적으로 ApplicationEventPublisher를 통해 이벤트를 발행하고,@EventListener, @TransactionalEventListener를 통해 이벤트를 수신합니다. 기본적인 사용방법은 이미 아시는 분들이 많을 거라 생각합니다.이 글에서는 @EventListener, @TransactionalEventListener가 Transaction과 함께 이벤트를 처리할 때 어떻게 동작한는지에 대해 알아보겠..

요즘엔 다양한 방식의 인증/인가 시스템이 존재합니다AWS Cognito나 Firebase Authentication 등 클라우드 서비스도 있고,Keycloak 같은 IAM(Identity and Access Management solution)도 존재합니다. 이렇게 다양하고 좋은 서비스들이 있지만 오늘은 가장 기본적인(?)Spring Security으로 JWT을 발급해 주는 인증/인가 서비스를 만들어보려고 합니다. 아래 내용은 Spring Security를 사용해 회원을 관리하고,로그인에 성공하면 해당 회원의 권한이 인가된 JWT를 발급하고, 발급된 JWT를 사용해 API를 호출하는 예시입니다. 의존성 추가// gradle.build.ktsdependencies { // Spring Security..

AWS ECS 구축하기 (근데 이제 ALB를 곁드린...)세상에는 서버를 배포하는 많은 방법이 존재합니다.FTP로 수정된 파일을 서버에 직접 올리고 stop.sh, start.sh으로 Tomcat을 끄고키는 방법부터k8s 환경에서 argocd를 사용하는 방법까지 다양합니다. 이yebali.tistory.com앞선 포스트에서 ECS를 구축하는 간단한 방법을 설명했습니다.이번 포스트에서는 코드가 수정되었을 때 ECS에 자동으로 배포할 수 있게 AWS CodePipeline을 사용해 CI/CD를 구축하는 방법을 알아보겠습니다. CodePipeline 구성CodePipelineAWS 콘솔에서 CodePipeline 생성을 해줍니다.template를 사용하지 않고 custom pipeline을 선택합니다. 파이프..

세상에는 서버를 배포하는 많은 방법이 존재합니다.FTP로 수정된 파일을 서버에 직접 올리고 stop.sh, start.sh으로 Tomcat을 끄고키는 방법부터k8s 환경에서 argocd를 사용하는 방법까지 다양합니다. 이번 포스트는 그중 AWS의 CodePipeline과 ECS를 사용해서 CI/CD를 만드는 방법에 대한 내용입니다. AWS ECR 생성 및 Docker 이미지 업로드하기가장 먼저 해야 할 일은 ECR을 생성하고 Docker 이미지를 업로드하는 일입니다.이 포스트에서는 ECR에 Docker 이미지를 업로드하고 ECS가 ECR에서 이미지를 가져다가 배포하는 방식으로 다룰 예정입니다. ECR(Elatic Container Repository)은 Docker이미지를 업로드할 수 있는 저장소입니다...

Coroutine 이란?위키의 표현을 빌리자면 coroutine은 실행을 일시중단(suspend)하고 재개(resume)할 수 있도록 하여비선점형 멀티태스킹을 위한 서브루틴(subroutine)을 일반화하는 컴퓨터 프로그램 구성요소이다. 서브루틴(Subroutine)서브루틴(subsroutine)이란 routine 내에서 실행되는 또 다른 routine으로 함수, 메서드 등을 의미하는 포괄적인 용어이다. 비선점형 멀티태스킹(Non-preemptive multi tasking)컴퓨터 내부에서 실행되는 프로세스들은 한정된 CPU, 메모리 등의 자원을 사용하기 위해 서로 경쟁한다.이때 OS은 하나의 프로세스가 자원을 무한정으로 점유하는 것을 막고 자원을 효율적으로 사용하기 위해스케쥴링을 하는데, 스케쥴링 방식..