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

[Qdrant Vector DB] 벡터 DB에서 페이징 처리 설계

1. 문제 인식 – “검색 결과가 이상해요”Qdrant Vector DB에서 페이징을 설계하는 중 FE에서 검색 시 응답받는 totalElements가 이상하다. 라는 피드백을 받았습니다. 매번 totalElements가 다르게 응답되고 있었고, 그 문제를 해결하는 과정을 담아보았습니다.일반적인 검색/목록 화면에서 페이징은 보통 이렇게 정리됩니다.offset 기반 페이징으로 개발예: page=3&pageSize=20 → 41~60번째 결과현재 검색 조건(검색어 + 필터)에 대해총 몇 건인지(totalElements)총 몇 페이지인지(totalPages)문제는, 우리가 사용하는 Qdrant가벡터 검색(QueryPoints)에 대해 offset/limit 페이징은 지원하지만해당 벡터 + 필터 조합으로 “총 ..

2025. 12. 22. 19:32
Error/개발환경

[OpenAI - Codex] ChatGPT Cli 사용법, 오류 해결방법

Codex란?오픈AI 코덱스는 오픈AI가 개발한 인공지능 모델이다. 응답 시 자연어의 구문을 분석하고 코드를 생성한다. 비주얼 스튜디오 코드와 Neovim 등의 선별된 통합 개발 환경을 위한 프로그래밍 자동 완성 도구인 깃허브 코파일럿을 지원한다.쉽게 말하면 GPT 사촌같은 녀석이다. 웹에서 비동기 에이전트 역할을 하기도 하고 Cli로도 사용이 가능하다.Codex Cli(ChatGPT Cli) 설치# npmnpm i -g @openai/codex# 또는 Homebrewbrew upgrade codexcodex 시작하기#로그인(OpenAI Pro, Plus에 가입되어 있거나 API KEY 발급 필수)codex login#시작codex#즉시 명령codex "hi"#에이전트 모드codex --full-auto..

2025. 7. 29. 10:44
Languege/Java & Spring

[Java/Spring 테스트를 추가하고 싶은 개발자들의 오답노트] 인프런 강의 후기, 강의 강추!!

의존성 주입을 통해 쉬운 테스트를 만드는 방법우선 강의는 Java/Spring 테스트를 추가하고 싶은 개발자들의 오답노트 이며, 해당 강의를 통해 학습한 내용을 정리해보았다.강의 후기는 그동안 추상적인 개념으로만 알고 있던 내용을 정말 잘 정리할 수 있는 기회이자 진작에 들었으면 많은 시행착오를 겪지 않아도 될만한 내용들이 강의에 담겼다고 본다. 그리고 개인적으로 이 강의가 가장 훌륭한점은 전달력이다. 해당 강사분은 카카오 개발자시니 개발 실력은 말할것도 없고, 딕션이나 설명하고자 하는 내용들이 부담없이 머리에 잘 들어온다. 개인적으로는 내용도 좋지만 전달력이 가장 좋아서 6시간 20분의 강의를 겨우 2~3일만에 전부 들었던 것 같다. 테스트의 중요성해당 강의에서는 기존 레이어드 아키텍처에서 출발하여 클..

2025. 7. 18. 16:42
Languege/Java & Spring

[Spring] Java Validation은 어떻게 한글 메시지가 나올까? 배포 중 장애 발생

1. 개요Spring Boot 프로젝트에서 @NotBlank 등 Bean Validation 어노테이션을 사용할 때, 로컬 환경에서는 한글 에러 메시지가 잘 나오지만, 배포(예: Jenkins → AWS EC2) 환경에서는 갑자기 영어 메시지(must not be blank)가 출력되어 당황하신 경험이 있으실 겁니다. 이 글에서는왜 로컬과 배포 환경에서 메시지가 다르게 나오는지어떻게 한글 메시지를 항상 보장할 수 있는지를 차근차근 살펴보겠습니다. 2. 문제 상황 재현개발자 PC(macOS, OS 로케일 = ko_KR)AWS EC2 인스턴스(기본 OS 로케일 = en_US)코드에는 어노테이션에 메시지를 따로 지정하지 않음배포 파이프라인에서 테스트 코드에 오류 발생배포가 안되는 오류 발생로컬과 배포 환경에서..

2025. 7. 17. 19:20
Languege/Java & Spring

[Swagger] Spring, Spring Boot 호환되는 버전 정리

springdoc-openapi × Spring Boot 버전 불일치로 Swagger `/api-docs` 가 500을 뿜었던 기록최근 사내 AI 서빙 모놀리식을 Spring Boot 3.x 로 올리면서Swagger-UI(/swagger-ui), OpenAPI JSON(/api-docs) 가 500 Internal Server Error 를 내뿜는 대참사가 있었다.검색하면 흔히 나오는 “순환 참조”‧“Security 설정” 문제와는 달리, 이번엔 버전 호환성이 주범이었다. 1. 증상요청결과`GET /swagger-ui`UI는 뜨지만 “Failed to load API definition” 경고`GET /api-docs` (또는 `/v3/api-docs`)**500 Internal Server Error*..

2025. 7. 8. 19:52
Error/트러블슈팅

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

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

2025. 4. 17. 07:48
  • «
  • 1
  • 2
  • 3
  • 4
  • ···
  • 25
  • »

공지사항

  • GitHub & WorkSpace

전체 카테고리

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

최근 글

최근댓글

태그

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

전체 방문자

오늘
어제
전체

블로그 인기글

Powered by Privatenote Copyright © 토마토의 개발일지 All rights reserved. TistoryWhaleSkin3.4

티스토리툴바