DevSeok

왜 Pageable을 파라미터로 하면 PageNo가 매우 큰수를 요청 받을시 오류가 발생하지않고 0으로 전환하는가?

상황 발생 환경 spring boot 3.2.9, jdk 17 발생 상황 대용량 데이터의 페이지네이션 조회를 구현하면서 흥미로운 현상을 발견했습니다.(이미 아신다면 pass) Pageable 파라미터를 사용시, page의 값을 int 범위를 초과하는 매우 큰 수(예: 100억)로 입력했음에도 불구하고 예상과 달리(직접 구현 방식과 ...

Flyway for Tibero 구현 및 오픈소스 기여 과정

들어가며 본 글에서는 회사에서 사용 중인 Tibero 데이터베이스의 DDL 버전 관리를 위해 Flyway를 적용한 과정과 이후 오픈소스 기여 경험을 공유하고자 합니다. 기존 문제 상황 프로젝트에 참여했을 당시, 데이터베이스 관리와 관련하여 다음과 같은 문제점들이 있었는데 DDL 레거시 코드의 과다 서비스 요구사항 변...

Swap 메모리 체크 관련 문제 및 에러 로깅

서두 식사 중 슬랙 에러 알람이 엄청 울렸다.. 다행히 다른 컨슈머 서버에서 문제없이 처리 중이여서 에러 로깅이 관리 되고있기에 cloudwatch로 바로 들어가 확인 후 코드 파악 후 문제를 정리하였는데 문제 상황 현재 서비스중인 ai 이미지 프로세싱의 경우 스팟인스턴스에서 실행중인 컨슈머 서버에는 인스턴스의 swap memory를 체...

AutoScaling Group의 스팟 인스턴스의 갑작스런 종료

서두 AWS AutoScaling Group에서 운영 중인 스팟 인스턴스가 예상치 못하게 종료되는 현상이 발생했다. 이는 강제 회수가 아닌 다른 이유로 인한 종료였으며, 그 원인과 영향, 그리고 대응 방안에 대해 분석했다. 문제상황 1. 현상 메시지 큐를 컨슈밍하는 스팟 인스턴스가 강제 회수되지 않았음에도 종료됨 새로운 인스턴스가...

AWS-CLI MFA 갱신 자동화 스크립트

서두 AWS CLI를 사용할 때 MFA가 활성화된 계정에서는 프로필의 MFA 토큰을 통해 인증을 받아야 한다. 여러 리전에서 인증을 받아 사용해야 하는 경우, 각 프로필마다 MFA 인증을 받는 과정이 번거로울 수 있다. 이를 자동화하기 위한 로컬용 스크립트를 작성하고자한다.(요즘에는 pc에서 바로 mfa 값을 받던데.. 더 간단할지도..) ...

JShell로 서버의 실시간 swap memory 확인하기

문제 상황 현재 서빙하고있는 서버가 설정해놓은 swap memory와 여유 공간이 어느정도 되는지 실시간으로 체크하는 방법에는 무엇이있을까?? 해당 값들을 태깅 후 폴링하여 모니터링 서버에서 체크 해도 좋고 직접 서버에서 체크해도 좋다. 글에서는, JShell을 사용해 실시간으로 서버의 swap memory를 체크하는 방법에 대해 정리하고자 한다...

Not-Modifed 상황에서 크롬이 304 status를 반환하지 않는 문제

문제 상황 사용자에게 특정 이미지 목록들을 제공하는 사이드 프로젝트 개발 중 서빙하는 이미지 목록의 사이즈가 크고 변경이(Insert , Update , Delete) 드물고 읽기 작업이 많은 기능 특성상 캐싱 필요 따라서 로컬 캐시를 설정 후 Cache-Control, Etag 값을 통해 캐싱 데이터가 만료되는 상황에 Etag를 통한 검증으로 ...