| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- Lower bound
- 12738
- 20115
- Upper bound
- 19598
- 이진 탐색
- slice개념
- 13975
- greedy
- 14921
- join제거
- Blue/Green
- dto projection
- 1495
- EntityGraph
- 11501
- no offset
- 백준
- NCP
- DP
- Promtail
- 이분 탐색
- 그리디
- 로그
- binary search
- 2512
- 무한페이징
- 모니터링
- Java
- 3187
- Today
- Total
목록전체 글 (51)
멘지의 기록장
프로젝트를 진행하며 yml 파일 관리를 위해 서브 모듈을 도입하게 되었는데서브 모듈 설정 방법과 후기에 대해 작성해보겠습니다.서브모듈이란 하나의 Git Repository 내에 다른 Git Repository를 포함시키는 기능입니다. 즉, 하나의 Repository에서 다른 Repository를 관리할 수 있습니다. Git의 서브모듈은 하위 디렉터리 내에서 변경 사항이 생기더라도 상위에 바로 반영되지 않고하나의 커밋 단위로서 관리할 수 있어, 각 서브모듈의 버전을 독립적으로 관리할 수 있는 장점이 있습니다.설정 방법먼저 프로젝트 코드가 포함될 Organization과 Repository를 생성합니다. 이후 yml 파일을 넣어놓을 Private Repository를 생성합니다. 이후 Public Repos..
프로젝트를 진행하면서 어떠한 기능에 대해 쿼리가 많이 발생하는 것을 확인하였고, 이를 리팩토링하며 쿼리를 최적화 해보았습니다. 쿼리를 최적화 하는 과정과 함께 SQL 쿼리 실행 시간을 비교해보고, 마지막에 성능 비교도 진행해보도록 하겠습니다.문제 상황우선 문제가 발생했던 기능은 다음과 같습니다. 유저가 질문에 대해 대답하는 문제를 풀 때1️⃣ 자신이 등록한 문제 or 관리자가 등록한 문제 중2️⃣ 랜덤한 문제 N개를 가져와야 한다. Return 예시{ "isSuccess": true, "code": "REQUEST_OK", "message": "request succeeded", "results": { "answerQuizList": [ { "quizId": 17, ..
프로젝트를 진행하며 모니터링 서버를 확인하던 중 어떠한 문제를 발견하였습니다.그래서 이번에는 로그 데이터를 기반으로 프로젝트에 발생한 문제를 해결해보도록 하겠습니다.로그 확인[2024-12-18 07:04:00:216447866] [scheduling-1] ERROR [org.springframework.scheduling.support.TaskUtils$LoggingErrorHandler.handleError:95] - Unexpected error occurred in scheduled task feign.RetryableException: Read timed out executing GET [https://apihub.kma.go.kr/api/typ01/url/wrn_now_data.php?fe=f..
이전 글에서 Logback을 사용하여 로그 관리하는 방법에 대해 작성해보았습니다.이번에는 해당 로그들을 Loki와 Promtail을 사용하여 모니터링 환경에서 확인할 수 있도록 만들어보도록 하겠습니다.Grafana Loki & PromtailGrafana Loki는 Prometheus에서 영감을 받은 로그 집계 시스템으로,로깅 및 데이터를 수집, 저장 및 검색하기 위한 오픈소스 플랫폼입니다. 이때 로그를 수집하기 위해 만들어진 것이 Promtail입니다.Promtail에서 로그를 가져와 저장한 후, LogQL이라는 쿼리 언어를 통해 로그를 검색할 수 있습니다. 📌 또한, 분산 시스템으로 설계되어 있어 수평 확장이 가능하고, 대규모 로그 데이터를 효율적으로 처리할 수 있다는 장점이 있습니다.Promta..