일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- log4j2
- Chunk
- spring
- spring cloud
- regex
- Effective Java
- Effective Java 3/e
- 퀵소트
- current_date
- JavaScript
- nodejs
- migration
- Spring Batch
- npm
- java
- git
- REACT
- expire_logs_days
- update
- MySQL
- upgrade
- REACTJS
- mysql 5.5
- Node
- Express
- log_bin
- 정규표현식
- eslint
- Regular expression
- Webpack
- Today
- Total
목록Technical/Spring Cloud (7)
내 세상
Spring Batch - 큰 단위의 작업을 일괄 처리 - 대부분 처리량이 많고 비 실시간성 처리에 사용 - 대용량 데이터 계산, 정산, 통계, 데이터베이스, 변환 등 - 컴퓨터 자원을 최대로 활용 - 컴퓨터 자원 사용이 낮은 시간대에 배치를 처리하거나 - 배치만 처리하기 위해 사용자가 사용하지 않는 또 다른 컴퓨터 자원을 사용 - 사용자 상호작용으로 실행되기 보단, 스케줄러와 같은 시스템에 의해 실행되는 대상 - 예를 들면 매일 오전 10시에 배치 실행, 매주 월요일 12시 마다 실행 - crontab, jenkins .. - 배치 처리를 하기 위한 Spring Framework 기반 기술 - Spring 에서 지원하는 기술 적용 가능 - DI, AOP, 서비스 추상화 - 스프링 배치의 실행 단위인 J..
배치 처리 방법 2가지 1. Tasklet을 사용한 Task 기반 처리 - 배치 처리 과정이 비교적 쉬운 경우 쉽게 사용 - 대량 처리를 하는 경우 더 복잡 - 하나의 큰 덩어리를 여러 덩어리로 나누어 처리하기 부적합 2. Chunk를 사용한 chunk(덩어리) 기반 처리 - ItemReader, ItemProcessor, ItemWriter의 관계 이해 필요 - 대량 처리를 하는 경우 Tasklet보다 비교적 쉽게 구현 - 예를 들면 10,000개의 데이터 중 1,000개씩 10개의 덩어리로 수행 - 이를 Tasklet으로 처리하면 10,000개를 한번에 처리하거나, 수동으로 1,000개씩 분할 Github link https://github.com/woniper/fastcampus-spring-bat..
resilience4j를 활용한 circuit breaker 패턴 적용 회복 탄력성 resilience + 4j 질병관리, 트래픽 제어 Spring Cloud Config https://madplay.github.io/post/introduction-to-spring-cloud-config Spring Cloud Config: 소개와 예제 스프링 설정이 바뀌었을 때 빌드, 배포없이 갱신하려면 어떻게 해야할까? 스프링의 설정 파일들을 어떻게 외부로 분리시킬 수 있을까? madplay.github.io Spring Boot Admin 1. admin server와 연동할 admin Client 추가 2. eureka client 등로을 통한 자동연동 Logback MDC - Log에서 middle serve..
API 통합 단일 진입점 제공 Spring cloud gateway vs zuul API GW를 이용한 API proxy 실습 - API Gateway 를 통해 요청이 전달되도록 설정하는 방법 시간에 따른 연결처리 방식 - 지정된 시간 이후에만 접근가능하도록 설정 Eureka Server Application.yml eureka: server.enableSelfPreservation: false instance: hostname: localhost prefer-ip-address: true client: #eureka server를 client로 등록 registerWithEureka: false #client에서 서비스 리스트를 캐싱 fetchRegistry: false serviceUrl: defau..
12Factor - https://12factor.net/ko/ Native Cloud : 동적인 IP를 가져가면서 진행하는 것 Service Registry - DNS & IP VS Native Cloud Discovery Pattern Service Registry는 Eureka, zookeeper 등. Config Server - spring cloud Config - spring cloud event bus - Srping value Distributed Tracing - MDC(Mapped Diagnostic Context) - Spring Cloud Sleuth / zipkin
IANA 에서 Wellknown Port로 설정된 값들을 Port로 사용하면 생략됨. Wellknown Port와 권한 이슈로 아래 구조로 구성함 Client ----- Port 80 ----- Web Server ----- Port: 8080 ------ Spring Boot 최근에는 Nginx를 이용한 reverse proxy 설정이나 아파치의 reverse porxy를 통해서 진행한다 HTTPS 설정시 유의사항 및 인증서 Wild 카드 인증서 *.도메인.com beta-test.mylocal.com 과 같이 -(대쉬)를 사용해서 응용할 수 있음. Apache 연동/Nginx 연동을 하는 이유가 위의 이유 때문임. Virtual IP와 DNS 위 그림에서 api1, api2, api3을 버전을 변경하..
https://spring.io/projects/spring-cloud 1대의 서버로 어려우니, 여러 대의 서버를 활용하기 위한 방법을 제공함. HA: High-Availability, 고가용성 Resilience: 회복력 웹서비스 확장 전략 - 실무 개발 유형 - 솔루션 개발 / SI 개발 / 서비스 개발 (고가용성) 서비스 확장 2가지 1. 스케일업을 통한 서비스 확장 2. 스케일다운을 통한 서비스 확장 스케일 아웃을 통한 서비스 확장 - 장애 대응 - 배포: 블루그린 배포 블루그린 배포 (스케일 아웃 시 배포 방식) - 기존 운영중인 Server와 신규 배포할 Server를 나누는 것. - Before: Blue - After: Green 서버 부하 분산을 위한 네트워크 서버: 무언가를 제공하는 대..