전체 글 647

Redis-Sentinel

🌈 TIL과반수 표를 받아야 해서 sentinel은 홀수인 3개로 구성했다.  ✨ Redis-SentinelRedis Sentinel은 Redis Cluster를 사용하지 않을 때 HA를 제공한다.MonitoringNotificationAutomatic failoverConfiguration provider  💕 sentinel 설치apt-get install redis-sentinel   🔍 sentinel.conf 수정bind 172.23.0.1 127.0.0.1 ::1로 수정한다.sentinel monitor mymaster 172.23.0.1 27890 1 👉 master의 호스트와 포트번호를 mymaster라는 이름으로 등록한다. 투표는 1개만 받아도 됨sudo vi /etc/redis/..

DB/Redis 2024.04.02

[Error] Uncaught exception: feign.RetryableException

@PostMapping@Operation(summary = "백엔드 내부에서 토스페이먼츠 결제 승인 API 호출")public ResponseEntity callConfirmAPI(@RequestBody ConfirmPaymentsRequest confirmPaymentsRequest) { paymentsConfirmClient.execute(confirmPaymentsRequest); testService.call(confirmPaymentsRequest); return ResponseEntity.ok().build();} contextPath가 /payments다.위 코드 같은 경우에는 POST /payments로 요청을 보내는데 이렇게 하니까 feign.RetryableExcepti..

gRPC 구현 예제

🌹 TILgRPC 서버 포트를 0번을 하지말자. 0번으로 했다가 다시 실행하면 랜덤으로 바껴서 다른 컴포넌트에서 gRPC 서버를 찾지 못 했었다.@GrpcClient에 들어가는 파라미터는 gRPC 서버의 spring.application.name  🐭 의존성 추가1. 플러그인 추가id 'com.google.protobuf' version '0.9.2' 2. dependencies 추가// gRPCimplementation 'net.devh:grpc-client-spring-boot-starter:2.13.1.RELEASE'// protobufimplementation 'com.google.protobuf:protobuf-java:3.22.2'implementation project(':proto') ..

Framework/gRPC 2024.03.21

[JPA] OneToOne

Order와 UserOrder는 1:1 식별관계다. MySQL의 Reverse Engineer로 테이블을 보면 1:N이 나와서 당황스러웠다. 🥹 결론은 코드에 문제 없다. MySQL Reverse Engineer의 문제라고 함,, orders 테이블 @Entity @Builder @AllArgsConstructor @Table(name = "orders") public class Order extends BaseTime { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "order_id") private Long id; @OneToOne(mappedBy = "order") private UserOrder userOrder; ..

ORM/JPA 2024.03.17

Jenkins와 GitLab 연동

1. GitLab 플러그인 설치    2. 1번 단계에서 플러그인을 설치해야 GitLab Connection 칸이 생긴다.   참고 👇👇👇https://as-i-am-programing.tistory.com/32 Manage Credentials GitLab 연결 등록 - " data-og-host="as-i-am-programing.tistory.com" data-og-source-url="https://as-i-am-programing.tistory.com/32" data-og-url="https://as-i-am-programing.tistory.com/32" data-og-image="https://scrap.kakaocdn.net/dn/fxW3f/hyVBHv2nzc/7wzYAuWZJgThS..

DevOps/Jenkins 2024.03.17

Jenkins 플러그인 설치 에러

일부 플러그인들이 Retry를 해도 설치되지 않아서 일단 Continue하고 넘어갔다. 🌈 해결 Jenkins 관리 > Plugins > Advanced settings에서 업데이트 사이트 경로를 바꿔준다. 아래 링크로 들어가서 미러 링크 사이트를 볼 수 있다. https://github.com/lework/jenkins-update-center GitHub - lework/jenkins-update-center: Jenkins mirror update center generator Jenkins mirror update center generator. Contribute to lework/jenkins-update-center development by creating an account on GitH..

DevOps/Jenkins 2024.03.12

413 Request Entity Too Large

이미지 업로드 할때 Local에서는 잘 됐는데 운영 서버에서는 413에러가 뜨면서 사이즈가 너무 크다고 에러가 떴다. 스프링 부트 설정에서 파일 업로드 최대 크기를 10MB로 설정했었고, 로그를 살펴봐도 Exception이 발생한 기록이 없었다. 알고보니 Nginx에서 설정을 해줘야 하는거였다 ! client_max_body_size 10M; 서버 블럭 밖에 정의해주었다. 참고 👇👇👇 https://blog.leocat.kr/notes/2020/04/21/nginx-413-request-entity-too-large [nginx] 413 Request Entity Too Large 오류 nginx로 reverse proxy 를 사용할 때, 용량이 큰 파일을 업로드하면 413 Request Entity T..

DevOps/Nginx 2024.02.14

htop

코어의 갯수를 확인해서 각 프로세스 정보를 디테일하게 모니터링 Ubuntu에 설치 sudo apt-get update sudo apt-get install htop htop 실행 htop 각 색깔은 해당 코어에 사용된 퍼센트 💚normal 🩵 virtualiz ❤️ 커널 💙 low-priority 단축키 F1 단축키 기능 확인 F10 htop 종료 참고 https://pearlluck.tistory.com/147 [linux 명령어] htop : 시스템 실시간 모니터링(top보다 업그레이드) htop 기존 top보다 업그레이드 된 실시간 모니터링 툴 top은 하나의 코어를 하나의 cpu로 계산 htop은 코어갯수를 확인해서 각 프로세스 정보를 더 디테일하게 모니터링 가능 htop은 따로 패키지 설치 pe..

DevOps/AWS 2024.02.10