이번 포스팅 부터는 MSA에 대해서 복습해보려고 한다. 기존에 github의 TIL에 정리해 놓은 것이 있었으나, 정리가 제대로 안돼 있어서 다시 참조해서 보기가 힘들었다. 고로 MSA 복습겸 Spring Cloud로 개발하는 마이크로서비스 애플리케이션 강의를 참고하여
사용자가 설정한 라우팅 설정에 따라서 각각 endpoint로 클라이언트 대신해서 요청하고 응답을 받으면 다시 클라이언트한테 전달해주는 proxy 역할을 하게 된다.시스템의 내부 구조는 숨기고 외부의 요청에 대해서 적절히 가공해서 응답할 수 있다는 장점을 가지고 있음.각
H2 데이터베이스 연동 Dependency 추가 build.gradle에 h2 dependency 추가 yml 설정 추가 application.yml h2 설정 추가 Spring Boot DevTools Dependency 애플리케이션을 빠르게 배포하고 종료
Configuration Service? 각각의 마이크로서비스가 가져야 될 구성 정보 파일 우리는 구성 정보 파일로써 application.yml 파일을 사용했었는데, yml 파일의 내용이 변경이되버리면 어플리케이션 자체가 다시 빌드가 되고 배포가 되어야 된다. 그
yml에 저장된 데이터베이스 PWD와 같은 값을 plain 데이터 값으로 저장하지 않고 위와 같이 암호화된 값으로 저장하고 Spring Cloud를 통해 복호화하여 각 마이크로서비스에 전달하도록 한다. > 💡 JCE 사용 시 다음과 같은 오류가 발생할 수 있다.
하나의 어플리케이션 내에서 모든 것을 개발하고 서로 메소드 호출로 이루어지는 모놀리식과 방식과 비교하여 마이크로서비스 방식은 물리적으로 분산된 시스템, 서비스 간의 통신이 필수적이다.이러한 마이크로서비스간의 통신이 어떠한 종류가 있는지 살펴보고 대표적인 Http 통신
개요 하나의 마이크로서비스를 하나 이상의 인스턴스에서 기동을 시켰을 때 클라이언트 요청이 여러개가 들어왔을 때 그것을 부하분산 처리하기 위해서 우리가 여러개의 인스턴스를 띄울 수 있다. (로드밸런싱) 마이크로서비스를 기동을 할 때, 우리가 서비스 port를 지정하게
개요 마이크로서비스라는 것은 하나의 단일 어플리케이션이 아니라 여러개의 서비스로 개발되나 보니 각각의 서비스에 문제가 생겼을 때, 어떻게 처리를 해야하는지 어떤 서비스가 문제가 생겼고, 해당하는 마이크로서비스의 시작점이 어디고 끝났을 때 반환값을 누구에게 줘야하는지에
Turbine Server 마이크로서비스에 설치된 Hystrix 클라이언트의 스트림을 통합 마이크로서비스에서 생성되는 Hystrix 클라이언트 스트림 메시지를 터빈 서버로 수집 Hystrix Dashboard Hystrix 클라이언트에서 생성하는 스트림을 시각
단일 데이터베이스를 사용하고 트랜잭션 처리가 완벽하게 지원된다(ACID)마이크로서비스는 각 서비스마다 독립적인 언어를 사용할 수 있고 독립적인 DB를 선택할 수 있다는 특징이 있다.(Polyglot)또한 마이크로서비스는 해당하는 데이터베이스가 가지고 있는 데이터를 자신