분류 전체보기(116)
-
2024 회고, 그리고 2025 에는 목표보단 더 중요한 이것
최근 회고를 위해 휴대폰 갤러리를 통해 각 달에 대해 키워드를 뽑고 돌이켜보니, 2024 년에 나에게 정말 많은 일들이 있었다는 걸 깨달았다.특히 7월 1일 지금의 회사 입사 이전에 삶들이 마치 2,3 년이나 된듯한 일들처럼 느껴졌다. 그래도 당시에 내가 지인들이랑 대화하거나, 만났을 때 찍은 사진들이 이번 회고에 정말 많은 도움이 되었다. (앞으로 사진 많이 찍어야겠다 ㅎㅎ)갤러리를 통해 각 달마다 키워드 추출한 결과는 다음과 같았다.(오너스 템플릿 링크)위처럼 키워드 이후, 나온 대표적인 키워드 4 가지는 다음과 같았다.취준&뽀기술 (소프트, 하드)연애여행이 중 1,2 번에 대해서 회고를 이 글에서 하려고 한다.(3,4 번은 따로 개인 노트에 ㅎㅎ)1. 취준, 그리고 취뽀까지대학교 4학년, 그리고 추..
2025.01.05 -
코드 작성 가이드 리뷰: 실무에 바로 적용 가능한 개발자의 필독서
1. 책 소개코드 작성 가이드는 이시가와 무네토시가 발표한 Code Readability 강연 내용을 기반으로 만들어진 책입니다. 사실 이 책을 읽기 전에 그의 강연 PDF를 훑어본 적이 있었는데, 대략 700+ 장의 pdf 라서 읽을 엄두를 못 냈습니다 ㅠ하지만 저자는 서문에서 "이 책을 읽으면 강연을 듣지 않아도 된다"고 할 만큼 자신감을 드러낸만큼, 책을 읽는게 상당히 이득입니다!책은 단순히 코드를 짜는 기술을 넘어서, 팀 전체의 생산성을 높이는 "가독성 좋은 코드"를 작성하는 법을 알려줍니다. 시중에 나온 다른 클린 코드에 대한 책들을 읽으면, 방법적인 부분에 있어서는 다들 훌륭하다고 생각합니다.이 책은 마인드셋, 변수의 네이밍부터, 함수, 클래스 등등 모든 프로그래밍 전반에 있어서 작성 가이드를..
2024.12.22 -
Kibana 로그 파묘 및 부검 후, 사수님 양지바른 곳으로 매장(?)해드리기
> 이 글은 Elastic APM이 Kibana에 수집하는 데이터를 바탕으로, transaction 및 span 같은 주요 이벤트의 종류와 의미를 분석하며, 이를 통해 성능 병목 문제를 어떻게 확인하고 해결할 수 있는지에 대해 설명합니다. 또한, 실제 사례를 통해 문제가 발생한 원인을 추적하는 과정을 공유합니다.배경최근에 회사에서 검색을 개선하기 위해 저는 Elasticsearch 를 도입했었습니다.그래서 매번 Elasticsearch 관련 이슈가 생길때마다 항상 제가 도맡아 작업을 하게 됐는데,이러다 보니 팀원들에게 이제 Elastic? —> 채훈님? 이라는 인식이 강하게 박혀있던 찰나, 일이 생겼습니다.금주 개발 서버가 갑자기 원인 모를 이유로 매우 아파하는 이슈가 있었습니다.그리고 그럴때마다 항상 ..
2024.11.24 -
왜 Elasticsearch는 Java로 개발되었을까? Compass부터 Lucene까지
이 글은 팀원의 단순한 한마디 "왜 Elasticsearch 는 C 나 C++ 이 아니고 Java 로 개발했어요?성능을 고려한다면 Java 보단 다른게 좋지 않나?" 라는 의문에서 시작된 글입니다.Elasticsearch란?Elasticsearch is a search engine based on Apache Lucene. It provides a distributed, multitenant-capable full-text search engine with an HTTP web interface and schema-free JSON documents. 출처 : https://en.wikipedia.org/wiki/Elasticsearch#External_linksElasticsearch는 Apache L..
2024.11.10 -
MySQL에서 ElasticSearch로 대용량 데이터 마이그레이션: OFFSET vs PK 기반 커서 방식 비교
본 문서는 회사의 기존 RDB 에서 ElasticSearch 로의 데이터 마이그레이션 전략을 다룬 문서입니다!개발 환경JDK : 17 Spring Boot : 3.0.0 MySQL : 8.0.36ElasticSearch : 7.15.1 Spring Data ElasticSearch : 5.0.12배경ElasticSearch 설치 이후, 남은 작업은 국내 숙박 목적지 검색에 사용되었던 호텔, 지역 정보 데이터들을 ElasticSearch 로 옮겨야하는 데이터 마이그레이션 작업입니다. 그래서 이관에 앞서 숙박 목적지 검색에 사용되던 데이터들 총 마이그레이션 데이터의 양을 계산 해야 합니다.기존 목적지 검색 API 의 응답 형태는 다음과 같습니다.{ "regions" : [...], "hotels" : [...
2024.10.27 -
회사의 기존 인증/인가 시스템 유지보수 및 새로운 방안 도입
1. 배경과 한계저는 회사의 기존 인증/인가 시스템을 개선하기 위한 작업을 진행했습니다. 회사는 Spring Security를 사용해 인증/인가 시스템을 구축하려 했으나, 도입 과정에서 여러 문제에 직면했습니다. Spring Security는 강력한 기능을 제공하지만, 설정이 복잡하고 유지보수가 어려운 단점이 있었습니다.또한, 기존 전역 필터와 새롭게 도입하려는 Spring Security Filter Chain 간의 충돌 문제가 발생했습니다. 기존 시스템은 전역 필터를 통해 인증과 인가를 처리하고 있었고, 이 필터들이 Spring Security의 Security Context를 사용하고 있었습니다. 이로 인해 새로운 Spring Security Filter Chain과 충돌이 발생했고, 이를 해결하기..
2024.10.13