일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Spring
- docker
- tool
- ubuntu
- java
- Design Patterns
- devops
- 요리
- Spring Boot
- php
- Oracle
- IntelliJ
- javascript
- linux
- it
- Gradle
- MySQL
- jsp
- springboot
- Git
- db
- jenkins
- redis
- Web Server
- AWS
- elasticsearch
- ReactJS
- 맛집
- JPA
- laravel
- Today
- Total
목록2022/07 (18)
아무거나
해당 포스팅은 2편인 이전 포스팅인 https://bkjeon1614.tistory.com/712을 참고하여 사전작업 후 진행하는것이 좋다. (모니터링 하는 방법에 대해서만 설명이 나오기 때문) prometheus 란? Prometheus는 이벤트 모니터링 및 경고에 사용되는 무료 소프트웨어 응용 프로그램입니다. 유연한 쿼리 및 실시간 경고와 함께 HTTP 풀 모델을 사용하여 구축 된 시계열 데이터베이스에 실시간 메트릭을 기록 풀 방식의 메트릭 수집, 시계열 데이터 저장 promQL을 활용하여 저장된 시계열을 쿼리 및 집계 promQL: 프로메테우스에서 실시간으로 시계열 데이터를 집계할 수 있는 함수형 쿼리 언어 서비스 디스커버리 데이터 시각화 grafana 란? Grafana는 오픈소스 메트릭 데이터 ..
1. 대파 껍질을 제거하고 흐르는 물에 씻는다. 2. 파의 길이는 약 5cm 정도로 잘라주고 (=손 3마디정도) 두꺼운 부분은 가운데에 칼집을 한 번 내주어 잘라준다. 3. 끓는 물에 소금 한 숟가락 넣고 대파를 살짝 데친다. ( 뜨거운 물에 들어가면 파향이 올라올때 바로 건져준다. ) 4. 건져준 대파를 바로 찬물에 넣는다. (파의 열기를 빼는게 중요하다 !!) 5. 대파를 직접 짜지말고 그물망에 냅두고 10~20분정도 물기를 제거한다. 6. " 참기름 1 스푼, 다진마늘 반스푼, 참깨 약간, 소금 반 스푼(=액젓도 좋음), 고춧가루 반 스푼 " 을 넣고 비비면 완성!
해당 포스팅은 1편인 이전 포스팅인 https://bkjeon1614.tistory.com/711을 참고하여 사전작업 후 진행하는것이 좋다. (모니터링 하는 방법에 대해서만 설명이 나오기 때문) 서킷브레이커 테스트를 위한 코드수정 먼저 모니터링을 위하여 https://bkjeon1614.tistory.com/711 의 CircuitBreakerService.java 코드를 일부 변경하자. [CircuitBreakerService.java] import java.util.Random; import org.springframework.stereotype.Service; import com.example.bkjeon.constants.Resilience4jCode; import io.github.resilie..
서킷브레이커란 Fault Tolerance(=장애 허용 시스템) 에서 사용되는 대표적인 패턴으로써 서비스에서 타 서비스 호출 시 에러, 응답지연, 무응답, 일시적인 네트워크 문제 등을 요청이 무작위로 실패하는 경우에 Circuit를 오픈하여 메세지가 다른 서비스로 전파되지 못하도록 막고 미리 정의해놓은 Fallback Response를 보내어 서비스 장애가 전파되지 않도록 하는 패턴 (대표적으로 MSA 환경에서 사용) 상태가 정상 Client -> Service A -> Circuit Breaker (상태: 정상이므로 Bypass Traffic) -> Service B 상태가 장애상황 Client -> Service A Circuit Breaker (상태: 장애상황이므로 Fallback Message 처..
Gradle Multi Project (Gradle 7.1.1 기준 대응) 필수참고 https://bkjeon1614.tistory.com/38 포스팅을 먼저 참고하고오자. 해당 포스팅은 Gradle 업그레이드로 인한 Deprecate 대응이므로 일부 코드수정만 확인할 수 있다. (참고 Github Repo) 시작하기전에 이전 포스팅에서 작성했던 Gradle 기능중 일부 삭제된 부분이 존재한다. 삭제된 내용은 하기 내용을 참고하자. Could not find method compile() for arguments 오류해결 compile, runtime, testCompile, testRuntime 은 Gradle 4.10 (2018. 8. 27) 이래로 Deprecate 되었으며 Gradle 7.0 (2..
AWS JAVA SDK 사용시 AWS Credential 클래스별 자격증명 (AWS Credential 관련 코드를 작성할 때 필수적으로 참고해야되는 내용이다.) BasicAWSCredentials 직접 accessKey, secretKey 설정 ... .withCredentials( new AWSStaticCredentialsProvider( new BasicAWSCredentials( "{accessKey}", "{secretKey}" ) ) ) ... DefaultAWSCredentialsProviderChain 기본 작업 공급자 체인이며 하기 순서대로 자격 증명을 찾는다. EnvironmentVariableCredentialsProvider 환경변수 AWS_ACCESS_KEY_ID 과 AWS_SE..
Spring Boot 에서 aws-java-sdk-dynamodb 를 활용한 AWS DynamoDB 연동 (+Credentials Setting 포함) 먼저 AWS Credentials 설정을 application.yml 기반으로 하게된다면 중요키들이 노출하게된다. 그래서 보통 KMS(=Key Management System)를 통한 관리, 키값 암호화 관리, 서버에 설정된 AWS CLI 를 통한 저장된 프로필 사용(Ex- ~/.aws/credentials) 등의 방법이 있으며 해당 내용에서는 서버에 설정된 AWS CLI 를 통한 저장된 프로필 사용 하는 방법으로 진행하도록 한다. aws-java-sdk-dynamodb 를 선택한 이유 (=spring-data-dynamodb 의 단점) 2020.03.0..
평소 대략적으로만 이해하고있던 배포전략 개념에 관하여 좀 더 자세하게 정리하고자 포스팅을 작성하게 되었다. 배포전략(Rolling, Blue/Green, Canary) Rolling Rolling 배포는 서버를 한 대씩 구 버전에서 새 버전으로 교체해가는 전략이다. 서비스 중인 서버 한 대를 제외시키고 그 자리에 새 버전의 서버를 추가한다. 이렇게 구 버전에서 새 버전으로 트래픽을 점진적으로 전환한다. 이와 같은 방식은 서버 수의 제약이 있을 경우 유용하나 배포 중 인스턴스의 수가 감소 되므로 서버 처리 용량을 미리 고려해야 한다. Blue/Green Blue/Green 배포는 신 버전을 배포하고 일제히 전환하여 모든 연결을 신 버전을 바라보게 하는 전략이다. 구 버전, 신 버전 서버를 동시에 나란히 ..