일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Algorithm
- 클라우드 네이티브
- ansible
- 헬름
- Microservice
- CRD
- Kotlin
- decorator 패턴
- Stress test
- 머신러닝
- 코틀린
- 마이크로서비스
- cloud native java
- kubernetes
- spring microservice
- Adapter 패턴
- devops
- MSA
- 동기화
- java
- ingress
- 익명클래스
- cloud native
- Semaphore
- 쿠버네티스
- 클라우드 네이티브 자바
- MySQL
- Spring
- nGrinder
- 자바
- Today
- Total
목록Java (20)
카샤의 만개시기
우리는 '12요소 방법론'을 배우면서 환경에 따라 DB나 스토리지 등 설정 정보들이 달라질수 있기 때문에 어플리케이션 구동 시에 설정 정보들이 주입될 수 있도록 해야한다고 배웠습니다. 이를 위해서 Spring Cloud Config를 이용하여 프로젝트를 구현해보도록 하겠습니다. Spring cloud config는 분산 시스템에서 설정파일을 외부로 분리하는 것을 지원하기 때문에 외부 속성을 중앙에서 관리할 수 있으며 어플리케이션의 재배포 없이 적용이 가능합니다. 준비 Spring cloud config를 테스트해보기 위해서는 3개의 Git Repository가 필요합니다. Config Properties Files Spring Cloud Config Server Spring Cloud Config Cli..
12요소 방법론이란 허로쿠(Heroku) 클라우드 플랫폼을 만든 창시자들이 정립한 방법론으로써 어플리케이션을 만들때 필요한 여러가지 근본적인 핵심 사상을 정리한것입니다. 그렇다면 12요소 어플리케이션의 실천법에 대하여 알아보도록 하겠습니다. 1. 코드베이스 (Codebase) 어플리케이션은 git과 같은 버전 관리 시스템을 통하여 형상관리 되어야하며 코드와 App은 1:1로 매핑되어 동일한 코드를 여러 App이 공유하지 않도록 해야합니다. 공유가 필요한 부분은 모듈화하여 공유하여야 합니다. 하나의 코드베이스는 복수의 환경으로 배포가 가능해야 합니다. 2. 의존관계 (Deoendencies) 의존관계는 패키지 매니저 툴(Java의 경우 Gradle이나 Maven)을 이용하여 명시적으로 표시하고 격리하여야 ..
처음 마이크로서비스를 공부하기로 마음을 먹고 여러 정보들을 찾아보고 스터디를 구하던 중, 어느 분께서 "제 생각엔 MSA는 혼자 공부할 수 있는 학문이 아니예요, 회사에서나 공부할 수 있는거 같아요." 라는 말씀을 하셨을 때 막막함을 느꼈습니다. 왜냐면 실제로 MSA는 혼자서 공부하기 쉽지 않은 학문이기 때문이었죠. 2개 이상의 마이크로한 서비스를 띄워서 각 서비스는 OAuth, JWT 등 token 인증을 이용해 통신해야 하고 트랜잭션 관리도 기존의 모노리스 아키텍쳐와는 완전히 다르기 때문에 MQ도 반드시 구축이 되어야 했으며 API Gateway부터 서비스 디스커버리를 구축하는게 간단한 일이 아니었기 때문입니다. 더군다나 로드밸런싱, Auto Scale, Auto Recovery 등을 해결해주는 쿠버..
'CMS' Contents Management System 서비스를 운영하다보면 페이지를 추가한다거나 네비게이션바 구조 변경, 게시판 등의 모듈을 추가 혹은 단순한 정적 페이지의 DOM이나 텍스트를 변경하는 일은 정말 너무나도 흔한 일입니다. 그런데 위와 같이 단순한 작업을 할때마다 서비스 배포를 위해서 인건비가 비싼 개발자가 계속 투입되어야한다면? 그건 정말 비효율적인 구조가 아닐 수가 없습니다. 물론 CI/CD를 이용해서 서비스를 간편하게 배포 할 수 있지만 그럼에도 새로 배포한다는 것은 리스크가 동반되는 작업이라는 것은 자명한 일입니다. 만약 무중단 서비스가 구축되어 있지 않다면 서비스를 재배포 하는 순간 서비스가 재시작하여 완전히 로드 될때까지 일시적으로 멈출수도 있습니다. 그런데 매주 웹페이지의..