HikariCP를 이해하면 풀 사이즈 설정이 보인다
·
Spring/Spring
애플리케이션의 데이터베이스 성능은 커넥션 풀의 효율성과 직결된다. 커넥션 풀은 데이터베이스 연결을 효율적으로 관리하는 핵심 요소다. 하지만 이를 제대로 이해하지 못한 채 기본 설정에 의존하는 경우도 있을 것이다.Spring은 HikariCP라는 뛰어난 성능과 신뢰성을 가진 커넥션 풀을 기본적으로 제공한다. 그러나 기본 설정만으로는 모든 상황에서 최적화된 성능과 안정성을 보장하기 어렵다.이 글에서는 HikariCP의 주요 개념과 작동 원리를 살펴보고, 적절한 풀 사이즈를 설정하는 방법에 대해 논의한다. 또한, 커넥션 풀과 관련된 대표적인 문제와 이를 방지하는 설정 전략도 함께 다룬다. HikariCP를 최적화하여 애플리케이션의 성능과 안정성을 극대화하는 방법을 알아보도록 하자. 1. DB Connectio..
Nexters 26기 지원 및 면접 후기
·
활동/동아리
지원을 시작하며Nexters 25기당시 나는 Nexters 25기에 지원했지만, 면접조차 보지 못하고 서류에서 탈락했다. 지원 문항들은 나에게 여러 질문을 던졌지만, 그 질문에 답하는 과정이 쉽지 않았다. 답변할 소재는 많았지만, 내 머릿속은 난잡하게 얽힌 생각들로 가득 차 있었다. 하나도 정리되지 않은 상태였다.나는 평소에 스스로 정리를 잘하는 사람이라고 생각했지만, 지원 과정에서 그렇지 않다는 사실을 깨닫고 당황했다. 준비 부족으로 인해 지원서를 제대로 작성하지 못했고, 결국 서류에서 탈락하는 결과를 초래했다. 이 경험은 나에게 중요한 교훈을 남겼다. 스스로에 대한 이해를 높이고자 생각을 체계적으로 글로 정리하는 습관을 들였으며, 항상 준비되어 있어야 겠다고 다짐했다. 재도전처음엔 아쉬움과 부끄러움이..
나만의 Swagger UI 서버, 쿠버네티스에서 운영하기
·
Infra
Swagger UI에서 여러 서비스에 대한 문서를 효율적으로 관리하려면, 문서 파일의 저장소와 접근 방식에 대한 고민이 필요하다. 이 글에서는 Swagger UI를 쿠버네티스 환경에서 구성하는 방법과, Object Storage를 활용해 Swagger 문서를 제공하는 방법을 다룬다. 이를 통해 자동화된 문서 관리, 안정적인 시스템 구축을 목표로 한다. 또한, Swagger UI를 조직의 필요에 맞게 커스터마이징하여 제공하는 방법도 함께 살펴볼 것이다. 1. Swagger UI1-1. Swagger UI란?Swagger UI는 swagger-api Organization의 핵심 프로젝트이다. 사용자에게 직관적인 UI를 제공하여 API 제공자와 사용자 간의 협업에 큰 도움을 주는 툴이다. Organizati..
REST API 문서 자동화로 업무 효율 극대화하는 방법
·
Spring
이 글은 Spring REST Docs를 통해 Swagger 문서화를 자동화하는 방법과 이를 통해 업무 효율을 극대화할 수 있는 여러 가지 도구들에 대해 소개한다. Swagger는 가장 유명한 API 문서화 툴 중 하나이다. HTTP 통신을 통해 정보를 교환하는 REST API를 사용한다면 협업을 진행하기 위해 Swagger를 사용하고 있는 팀이 많을 것이다. 테스트 코드로 자동화했을 수도 있고, 주석을 다는 방법과 기타 방법을 사용해 자동화한 팀도 존재할 것이며, openapi 문서를 한땀한땀 직접 작성하는 분들도 있을 것이다. 몇몇 분들은 굳이 "Swagger가 굳이 필요하냐?", "테스트 코드를 통해 Swagger 문서를 자동화할 필요가 있냐?"고 의문을 가질 수도 있다. 하지만 내 대답은 "테스트..
SonarQube로 코드 품질 관리하기 (feat. gitlab, jenkins, docker)
·
Infra
1. SonarQube란?SonarQube는 정적 분석 도구 중 하나로 20가지 이상의 언어와 프레임워크를 지원한다. 코드 품질을 관리하기사람이 코드를 작성하거나, 코드 리뷰를 할 때 놓치기 쉬운 기본적인 실수들을 하지 않게 도와준다. PullRequest와 연동하면 분석 결과를 리뷰도 달아주기까지 한다. 1-1. 어떤 것을 우리에게 제공해주는가?SonarQube를 활용하면 문제에 대한 분석을 자동화할 수 있다. 아래와 같은 지표를 한 눈에 파악할 수 있다.Code Smell: 변경 가능성, 모듈성, 이해가능성, 테스트 용의성, 재사용성 등을 분석버그: 잠재적인 버그. 런타임에 예상되는 동작을 하지 않는 코드취약점: 해커들에게 잠재적 약점이 될 수 있는 보안상 이슈. (ex. SQL Injection, ..
글또 10기 시작!
·
활동/글또
글또 지원9기에 이어 10기에도 지원했다. 이것저것 벌여 놓은 일들(스터디 2개 운영, 오픈소스 컨트리뷰션 활동 등)이 많아 글또를 잘 할 수 있을까? 라는 생각이 있었다. 그래도 하고 싶었다. 저번 기수에서 다양한 활동을 하진 못했으나, 나의 글쓰기 방식이 바뀌고 작문 능력이 향상된 것만으로도 좋았다. 또 반상회 행사, 커피챗도 좋은 경험이었기에 글또 지원을 결정하게 되었다. 이번 글또는 회사 사람들과 함께 하게 되었다. 글또 활동 하면서 좋았던 점들을 회사 사람들에게 홍보하고 다닌 덕분인지 두 분의 동료가 글또에 합류하게 되었다. 이제 반상회 외롭게 혼자 가지 않아도.. 마지막 글또글또는 10기를 끝으로 막을 내린다.마지막이라는 것은 아쉬움이 동반되는 말이다.  글또 OT에서 성윤님이 "끝이 없으면 ..