MSA 장애전파 장애전파의 문제점 간단하게 MSA의 장점으로는 한 서비스는 다른 서비스에 영향을 안 끼치는것이다. 하지만 다른 서비스에 의존성이 있는 서비스들은 영향을 끼친다. 즉 MSA에서 서비스간 장애가 전파될 때가 있다. 마이크로 서비스 아키텍쳐 패턴은 시스템을 여러개의 서비스 컴포넌트로 나눠서 서비스 컴포넌트간에 호출하는 개념을 가지고 ...
MSA
MSA(MicroService Architecture)란? 📌 정의 작고, 독립적으로 배포 가능한 각각의 기능을 수행하는 서비스로 구성된 프레임워크라고 할 수 있다. 완전히 독립적으로 배포가 가능하고, 다른 기술 스택이 사용 가능한 단일 사업 영역에 초점을 둔다. 특징 MSA는 API를 통해서만 상호작용할 수 있다. 즉, 마이크로 서비스는...
Kopring 시작 설정하기
Kopring 시작 설정하기 🎊 시작하기전에.. 이 글은 코프링(Kotlin + Spring)을 처음 접할 때 제가 어려움을 겪어서 처음 접하시는 분들은 조금 더 쉽게 시작하기 위해 작성한 글입니다. 먼저, 코프링에는 Lombok을 사용하지 않습니다. ⚙ 설정 build.gradle.kts 파일이 Java에서의 build.gradle과 같은 ...
@Transactional의 종류
@Transactional의 종류 🎊 시작하기전에… Transaction에 대해서 기본적인 지식이 있어야 수월하게 읽을 수 있습니다. Transactional 어노테이션은 Springframework와 javax에서 제공해줍니다. 😵 차이점 Springframework의 transactional은 Springframework에서 제공한다. ...
Spring Boot에서 DB인덱싱하기
Spring Boot에서 DB인덱싱하기 🎊 시작하기전에.. DB 인덱싱에 대한 전반적인 이해가 필요하다. 또, 인덱스 연산은 수정이 일어날 때 굉장히 비효율적이다. 위 점 참고하고 읽어주면 좋을 것 같다. ♻ 인덱스 설정하는 법 엔티티 클래스 위에 @Table(indexes = @Index(name = "인덱스 명", columnList ...
Spring Boot Admin 구축하기
Spring Boot Admin 구축하기 🎊 시작하기전에… Spring Boot Admin에 대해서 대략적으로 파악하는게 좋을 것 같다. 또, Spring Boot Admin을 구축하려면 하나 이상의 Client가 존재해야한다. 현재 Kotlin에서는 작동하지 않는것으로 보인다. 1️⃣ 가장 먼저 Spring Boot Admin 프로젝트를 ...
가상 메모리
가상메모리 📌 정의 메모리를 관리하는 방법으로, 실제 메모리 주소가 아닌 논리적 주소를 이용해 관리해서 실제 주 기억장치의 크기보다 더 큰 프로그램도 적재할 수 있는 방법이다. 프로세스에서 필요한 부분만 메모리에 적재하는 것이다. 관리방법 요구 페이징 기법 프로세스가 참조하는 페이지들만 적재 Page fau...
Portainer
Portainer란? 🎊 시작하기전에.. Docker가 설치되어있다고 가정하고 글을 읽어주세요. 📌 정의 Docker를 웹상에서 관리할 수 있게 도와주는 툴이다.
Portainer 사용법
Portainer 사용법 1️⃣ 가장 먼저 우선 도커 볼륨을 생성한다. docker volume create portainer_data 2️⃣ 두 번째로 Portainer 이미지를 다운로드하고, 실행한다. docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v p...
동시성 vs 병렬성
동시성 vs 병렬성 📌 정의 동시성 : 동시에 실행되는 것 처럼 보이는 것, 싱글 코어에서 멀티 스레드를 동작시키는 방법 병렬성 : 동시에 여러 작업이 실제로 처리되는 것, 멀티 코어에서 멀티 스레드를 동작시키는 방법 위의 정의를 보면 와닿지 않을 것이다. 위 사진을 보면 동시성은 여러 작업을 번갈아 가면서 작업을 진행한다. 따라...