MNT_Dev
  • 홈
  • 태그
  • 방명록
  • 메뉴 닫기
  • 글작성
  • 방명록
  • 환경설정
    • Development (140)
      • Languege (36)
        • Java & Spring (24)
        • C# & ASP.NET (5)
        • JavaScript (2)
        • Kotlin (5)
      • DB (0)
        • Oracle (0)
      • Study (72)
        • 네트워크 (3)
        • 이펙티브 자바 (41)
        • 우아한 테크 코스 (7)
        • Next Step (3)
        • Certificate (5)
        • Side Proejct (6)
      • Error (17)
        • 개발환경 (9)
        • 트러블슈팅 (6)
      • Algorithm (12)
      • 개발환경 (1)
      • 회고 (2)
  • 홈
  • 태그
  • 방명록
Error/트러블슈팅

[ORACLE] 대규모 데이터 마이그레이션 도전

제목 : [ORACLE] 대규모 데이터 마이그레이션에서 인덱스 비활성화가 가져다주는 이점⚠️ 운영 환경에서 대규모 마이그레이션 시 발생하는 문제Oracle DB에서 기존 마켓 테이블의 이미지 여러 컬럼(IMAGE_URL1 ~ 4)로 구성된 데이터를 No 체계로 별도의 테이블로 관리하고 마켓 테이블에서는 IMAGE_NO를 마이그레이션하여 별도의 이미지 관리 테이블에서 URL을 관리하도록 구조 변경을 진행할 때 대규모 UPSERT 작업이 필요했습니다.처음 배치를 통해 점진적 마이그레이션을 진행하려 했지만, 내부 의견으로는 번거로우니 서비스 중단 후 한번에 작업하자 로 결정되어 빅뱅 패치를 진행하게 되었습니다.운영 환경에서 한 번에 모든 데이터를 마이그레이션하다 보니, 개발 환경과 비교해서 처리 속도가 급격히..

2025. 4. 17. 07:48
Error/트러블슈팅

[JAVA] ENUM에 setter를 쓰면 생기는 일 (feat. 싱글턴)

⚠️운영 환경에서 Java enum의 상태 변경으로 인한 문제 발생Java에서 enum을 사용하여 미리 메시지를 설정해두고, 해당 메시지가 동적으로 변경되는 로직이 있었다. 그러나 운영 환경에서 간헐적으로 이상한 메시지가 내려가는 문제가 발생하였다. 👌문제찾기Issue에 사용자가 이상한 오류 메시지를 받는 문제가 있었다.간헐적으로 비정상적인 Validation 오류 메시지가 사용자에게 반환되었다. ex) 비밀번호를 입력해주세요 -> 잘못된 아이디 입니다처음에는 해당 메시지가 어디서 오는지 찾고 있었지만, 외부 API에서도 코드에서도 해당 메시지를 발견할 수 없었다. 하지만 DB에 특정 오류 상황에 해당 메시지가 저장되는걸 발견했지만, 해당 API에서 메시지가 변경되는걸 확인할 수 없었다.그렇다면 원인은..

2024. 12. 10. 20:16
Error/개발환경

[OpenAI] ChatGPT API 오류 - 429 Too Many Requests

⚠️오류 발생openAI ChatGPT를 연동하여 구현된 API에 문제가 발생하였다는 Issue를 접했다.429 Too Many Requests 라는 오류가 발생했고, 문제의 원인을 찾기 시작했다.첫 번째로 openAI의 Status를 확인했다. 종종 AWS의 서비스가 다운되는 경우를 보았어서 해당 문제일거라고 생각했다. 하지만 Status 확인 결과 아무런 문제가 없었다. 👌문제찾기그럼 문제는 어디였을까?해당 API의 Response를 확인했다.확인 결과 Http Response Status는 429 Too Many Requests라고 나오고 있었고, 공식 문서 확인 결과 Rate Limit이 걸리는 경우에 해당 응답을 반환하고 있었다.사용량이 많은 API에서 openAI를 호출하고 있지만, 별도의 ..

2024. 12. 9. 23:30
Error/개발환경

[ElasticSearch] Spring data elasticSearch 인증 관련 오류 해결

개요엘라스틱 서치 환경을 구축하고, Spring Data Elasticsearch를 연결하는데 문제가 발생하였다.그 이유는 바로 로컬에서 테스트 할 때 와는 다르게 실서버에서는 인증(https, 인증서, Authorization)이 필요했다.하지만 해당 객체를 통해 해결할 수 있다는 기본적인 설정이 있었지만 https와 cert 인증서를 포함하여 Authorization을 모두 포함하는 코드는 찾아볼 수 없었다. 결국 하나씩 디버깅을 해가며 원인 분석을 한 내용을 공유하고자 한다.추가로 Spring data Elasticsearch는 처음 bean이 컨테이너에 생성되면서 handshake를 하게 되는데 이때 elasticsearch의 health를 하게 되는데 네트워크 in/out bound도 확인해야 ..

2024. 9. 6. 18:55
Error/개발환경

[Git] 잘못된 브랜치에 커밋 했을때 대처법

🔍 개요 프리코스를 진행하면서 실수로 branch를 만들고 체크아웃을 하지 않고 미션을 진행했다. 이런 경우 첫 번째 커밋을 제외한 나머지는 전부 롤백시키고, 그동안 진행한 커밋들을 branch로 옮겨야 하는데.. 1.새로운 브랜치 생성 및 체크아웃 먼저 옮길 브랜치를 생성하고 해당 브랜치로 체크아웃합니다. git checkout -b 2.커밋 해시 찾기 git log # 첫 번째 커밋 해시를 확인하세요. (방향키로 조작 가능) git reset --hard git log 명령어를 사용하여 main 브랜치의 첫 번째 커밋 해시를 찾습니다. (만약 다른 해시로 복구하려면 그걸 복사) 그런 다음 첫 번째 커밋 상태로 브랜치를 초기화합니다. 는 실제 첫 번째 커밋의 해시로 교체해야 합니다. 3.main 브랜치..

2023. 11. 8. 13:22
Error/트러블슈팅

[Trouble Shooting - CORS] Spring Boot CORS 와일드카드(*) 설정방법

💥 개요 사이드 프로젝트 진행 시 항상 문제가 되던건, CORS였습니다. CORS란 CORS(Cross-Origin Resource Sharing)는 클라이언트(웹 브라우저)에 의해 제어되는 HTTP 기반 보안 메커니즘입니다. 이를 통해 서비스(API)는 클라이언트가 요청할 수 있는 오리진 이외에 요청할 수 없는 오리진도 표시할 수 있습니다. 한 오리진에서 로드한 웹사이트(HTML 문서 또는 JS 스크립트)가 다른 오리진의 리소스와 상호 작용할 수 없게하는 SOP(Same-origin policy)와 함께 설계되었습니다. CORS는 일부 크로스 오리진 요청을 명시적으로 허용하고 다른 요청은 거부하는데 사용됩니다. CORS는 기본적으로 웹 브라우저에서 구현되지만 API 클라이언트에서도 옵션으로 사용할 수 ..

2023. 7. 22. 20:35
  • «
  • 1
  • 2
  • 3
  • »

공지사항

  • GitHub & WorkSpace

전체 카테고리

  • Development 140
    • Languege 36
      • Java & Spring 24
      • C# & ASP.NET 5
      • JavaScript 2
      • Kotlin 5
    • DB 0
      • Oracle 0
    • Study 72
      • 네트워크 3
      • 이펙티브 자바 41
      • 우아한 테크 코스 7
      • Next Step 3
      • Certificate 5
      • Side Proejct 6
    • Error 17
      • 개발환경 9
      • 트러블슈팅 6
    • Algorithm 12
    • 개발환경 1
    • 회고 2
애드센스 광고 영역
  • 최근 글
  • 최근 댓글

최근 글

최근댓글

태그

  • #구글 클라우드
  • #이펙티브 자바
  • #이펙티브자바
  • #spring
  • #BOJ
  • #TDD
  • #코틀린
  • #kotlin
  • #saa
  • #개발자
  • #spring boot
  • #effective java
  • #김영한 스프링
  • #백준
  • #객체지향
  • #트러블슈팅
  • #우테코
  • #스프링
  • #후기
  • #Java
  • #도메인 주도 개발
  • #AWS
  • #제네릭
  • #자바
  • #김영한
  • #파이썬
  • #GCP
  • #스프링부트
  • #백엔드
  • #클라우드
MORE

전체 방문자

오늘
어제
전체

블로그 인기글

Powered by Privatenote Copyright © MNT_Dev All rights reserved. TistoryWhaleSkin3.4

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.