들어가며최근 구현한 기능 중 특정 API 의 응답 크기가 100kb 가 초과하는 것들이 있었다. 배포 후 큰 문제는 없었지만, 네트워크 대역폭 제한이 있어서, 사용자가 몰릴 경우 잠재적인 문제가 될 수도 있다는 생각이 들었다. 이를 해결하기 위해 응답을 압축하는 방법을 사용했는데, 그 과정에 대해 예제와 함께 글을 적어본다.Gzip 압축을 사용한 이유응답 크기가 큰 특정 몇 API 는 사용자가 최초 접속 시 반드시 호출 되어야만 하고, 데이터 특성상 자주 변경되어 HTTP 의 Cache-Control 을 사용해 캐싱하기 어려웠다. ETag 를 적용하는 것도 고려했지만, 데이터가 너무 크고 빈번하게 변동되어 매번 식별자를 생성하는 작업이 비효율적이라 판단했다. 대신, Last-Modified 를 적용해서 ..
스프링캠프 2023 을 다녀온 후 기회가 있다면 컨퍼런스에 자주 참여해야겠다고 생각하고 있던 와중에 우연찮게 Kakao 에서 주관하는 Tech Meet 이 열린다는 것을 알게 되어 신청하였고 당첨되어 2023.07.18 에 다녀왔다. 제2회 kakao tech meet에 초대합니다! kakao tech meet kakao tech meet은 카카오의 공개 기술 세미나로, 최신 기술 트렌드와 경험 및 노하우를 자주, 지속적으로 공유하며 개발자 여러분과 함께 성장을 도모하고 긴밀한 네트워크를 형성하고 tech.kakao.com 티켓은 무료이며 티켓에 응모할때 몇가지 질문지들을 작성해야했다. 이번 세미나에 지원한 이유, 기대되는 세션, 발표자에게 할 질문 이정도였던것 같다. 나는 실제했던 업무 중 레거시 코드..
언제 나오나 기다리던 스프링캠프 2023 발표 영상이 드디어 유튜브에 올라왔다. 해당 영상을 다시 보며 컨퍼런스 다녀온 후기를 적어보자 한다. SpringCamp by KSUG 애플리케이션 서버 개발자들과 함께 가치있는 기술에 관한 정보과 경험을 `공유`하고, 참가한 사람들과 함께 `인연`을 만들고, 시끌벅적하게 즐길 수 있는 개발자들을 위한 '축제'를 목표로 하는 www.youtube.com 2023년 4월 6일 기다리던 스프링캠프 2023 기술 컨퍼런스 티켓팅이 시작되었다. 첫 티켓팅은 14시가 되자마자 신청했으나 실패했다. 하지만 포기하지않고 매일 시간날때마다 새로고침을 통해 확인, 4월 11일에 구매에 성공했다. 해당 기술 컨퍼런스를 들으며 대충 노션에 키워드형식으로만 적어놓았다. 그 중 기억에 ..
사건의 시작 나는 회사에서 특정 상황에 처음으로 TransactionalEventListener 를 사용해본 뒤 유용하다는것을 알고 회사 동료분들에게 이런게 있다고 알려드렸다. 그러던 어느 날 한 회사 동료분이 나에게 물었다. "와잼님 TransactionalEventListener 를 여러개 쓰면 어떤게 먼저 실행되나요?" 나는 답변으로 "몇번 테스트 해보고 사용해본바로는 TransactionalEventListener 에 phase 라는게 존재해서 Before Commit, After Commit, After Rollback, After Completion 이 있으며 성공이면 Before Commit 으로 시작해 After Commit -> After Completion , 실패면 After Roll..