[Spring Boot] 대량 배치에서 쿼리 개선을 통한 성능 개선 (sub. 커스텀 ItemReader 없이 성능 개선해보기) - 과거에 저질렀던 오류 정정 버전
·
Backend/Spring Boot & JPA
🙇‍♂️ 과거에 RepositoryItemReader가 최악의 성능을 보인다는 분석은 엄연히 제 실수였습니다.RepositoryItemReader가 최악의 성능을 보인다는 수치를 보인 이후, 당시 작업이 너무 많아 원인을 제대로 분석할 여유가 없어서 추측만 하고 넘겼었습니다.그러나 반 년이 지난 지금까지도 개인적인 의문이 풀리지가 않았고, 그 와중에 조회수는 계속 오르고, 제 말이 사실인 것처럼 받아들이신 분들까지 나타나는 상황을 보았습니다.찝찝한 기분이 들어 급하게 다시 분석해본 결과, RepositoryItemReader의 성능 저하는 제가 만든 Repository 구현체에서 비롯했으며, 잘못된 정보를 장기간 전달드리게 되어 사죄의 말씀드립니다.처음엔 Hibernate의 동작을 알아보는 방향으로 포..
[FastAPI] uvicorn을 사용한 FastAPI의 변경이 감지되지 않는 원인 (`25.03.18 미해결 문제)
·
Backend/FastAPI
💡 자세한 원인을 분석하고 싶으나 에러 재현하는 방법을 알 수 없어, 추후 동일 문제가 다시 나타날 경우 업데이트할 예정입니다.1. Introduction 📌 Why aren't the changes being updated?내 운영환경은 Windows 11이었고, VSCode 내장 터미널에 다음과 같이 애플리케이션을 실행 중이었다.uvicorn app.main:app --reload --host=127.0.0.1 --port=8080 지금껏 아무런 문제가 발생한 적이 없고, 이번 작업은 코드 복잡도가 더 증가하기 전에 무지성으로 작업한 코드를 리팩토링 하는 간단한 일이었다.그런데 리팩토링 도중 다음과 같은 에러가 발생했다. 2025-03-17 19:23:36,025 - [PID:16652/TID:6..
[FastAPI] 알리바바 클라우드 Qwen API와 FastAPI 연동
·
Backend/FastAPI
1. Introduction 📌 뻘글주위에 AI 연구하는 사람들이 본인들만 재밌는 거 하는 게 심술이 나서 나도 써보고 싶어졌다.(또 자기네들만 재밌는 거 하지.) 그런데 차마 fine-tuning까지는 못 해먹겠고, few-shot learning으로 우선 만족하기로 했다.나중에 진짜 사용자가 생기면, prompt를 개선하든 fine-tuning을 하든 발전시키는 게 이롭다고 생각. 처음에는 deepseek 오픈소스 데려와서 사용하고 있었는데, 국내에서 차단 당해버렸다.그래서 다른 거 뭐 있나 찾다가, Qwen을 사용하기로 결정했다. 문제는,너무 느려. 애플리케이션 초기 환경 로그를 찍어보니, 멀쩡하게 달려있는 GPU 사용하지도 않고 있길래 CUDA 설치를 하긴 했는데 랩탑에 달려있는 귀여운 GPU라..
[Spring Boot] 로그 잃고 외양간 고치기
·
Backend/Spring Boot & JPA
💡 Spring Boot에서 로그 파일을 관리하는 방법이 주된 내용이고, 이와 관련한 다양한 정책들은 이론적으로 구상만 해봤습니다.왜냐면, 프리티어 서버에게 로그 관리란 사치일 뿐이니까..😏1. Introduction 📌 Problem로그 관리의 중요성은 알고 있었다.다만, 혼자서 API 개발부터, 프로젝트 관리에 온갖 회의는 물론이고, 개인적으로도 영어, OS, JVM 공부까지 하다가, 또 틈만 나면 Spring 프레임워크 소스 코드 분석하는데 로그 관리에 투자할 시간이 없었을 뿐. 애초에 런칭도 못 하고 있는데다, 어떤 로그가 중요한 지도 모르는 주제에로그 시스템에 시간을 투자하는 것 자체가 의미가 없다고 생각했다. 그런데 엊그제 iOS 팀에서 서버에서 에러가 났다고 확인을 요청했었다.하필 그 ..