OpenFeign Netflix에서 개발된 Java 의 Http Client Binder. 선언적으로 HTTP 요청을 생성 해주는 라이브러리다. 즉, 인터페이스에 어노테이션을 추가하는 정도의 코드를 통해 통신 로직을 작성할 수 있다. 적용하기 전제 Eureka를 이용한 서비스 디스커버리가 존재한다. Server Setting 1. 의존성 추가 2. @EnableFeignClients 어노테이션을 추가. 마이크로 서비스간 요청받을 API 작성 Client Setting 1. 의존성 추가 Sprinb Boot Stater Web, Eureka-Client, Openfeign 의존성을 추가한다. 2. @EnableFeignClients 어노테이션을 추가. Controller Feign 을 활용한 선언적 HTT..
스프링 클라우드 ( Spring Cloud ) Spring Cloud 는 마이크로 서비스 아키텍처 (MicroService Architecture : MSA) 를 쉽게 구축하기 위해 정의한 공통 패턴등을 사용할 수 있게 해주는 도구들의 모음이다. 이점 비즈니스 로직에 집중할 수 있게 해주며, 덕분에 개발 효율성을 극대화 할 수 있다. 기존 사용하던 Spring Project와 통합하기 유용하여, 현재 서비스를 마이크로 서비스로 변경하기 편하다. 제공하는 클라우드 패턴 분산 메시징 ( Distiributed Messaging ) 부하 분산 ( Load Balancing ) 회로 차단기 (Circuit Breaker) 라우팅( Routing ) 분산 로깅 ( Distiributed Logging ) 서비스 ..
Spring Cloud Conifg Spring Cloud Config 는 설정 파일을 관리하는 서버를 통해 각 마이크로 서비스들이 외부에 설정 파일을 참조하여 사용할 수 있게 하는 것을 의미한다. 설정파일을 외부에서 관리하는 덕분에 추가 배포 없이 설정파일 변경을 동적으로 할 수 있다. Spring Cloud Conifg 동작 방식 Micro Service는 해당 인스턴스 생성 시점에 Config Server로 부터 설정파일을 조회해 사용한다. Config Server는 이러한 설정파일 저장소(Git Repository)에서 가져와 반환한다. 설정파일이 서비스 동작중 변경하게 되면 변경 내용 적용을 위해 각 Micro Service에 Refrest 요청을 전달한다. Spring Cloud Config ..
절차지향과 객체지향 프로그래밍 패러다임의 진화 과정에서 애플리케이션이 점점 커지면서 그 코드가 복잡하고 이해하기 힘들며 변경에 불리했던 절차지향 프로그래밍에 단점을 해결하고자 객체지향 프로그래밍이 탄생하였다. 두 패러다임은 다양한 차이가 존재 하지만 이 글은 캡슐화와 정보은닉 내용을 중심으로 살펴본다. 절차지향 프로그래밍 방식의 단점 1. 데이터와 그 프로세스가 흩어져 있어 데이터 구조 변경이 생겼을 때 흩어져 있는 프로세스들을 찾아 수정하기 힘들다. 2. 데이터를 다양한 프로세스들에서 쉽게 참조할 수 있다보니 데이터 구조 변경시 수정 해야할 프로세스가 너무 많았다는 단점있다. 위와 같은 절자치향 패러다임의 단점을 캡슐화와 정보은닉을 통해 해결하였다. 캡슐화 캡슐화는 데이터와 그 로직(method)를 클..
- Total
- Today
- Yesterday
- 메모리 파편화
- ATDD
- 세션 불일치
- Clean Architecture
- 컴포짓 패턴
- 동적 디스패치
- 메모리 단편화
- Memory Fragmentation
- 장애 해결기
- OOP
- java
- 뾰족함
- Object Pool
- multimap
- Session
- pass by reference
- 외부 단편화
- 수직 분할
- 정적 타입 언어
- 클린 아키텍처
- 동적 타입 언어
- pass by value
- 내부 단편화
- 육각형 아키텍처
- Sticky Session
- 수평 분할
- 객체 풀
- RestAssured
- SpringBoot 2.2
- pool
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |