HTTP 200 OK

Memento mori & Carpe diem

분류 전체보기 63

DB 설계 팁

PostgreSQL와 MySQL에서 쿼리 성능 개선, 대용량 데이터 처리 전략, 데이터 모델링 및 트랜잭션 설계와 같은 작업을 수행하기 위해서는 아래와 같은 선행 작업이 필요합니다. 1. 요구사항 분석목표 정의: 어떤 데이터를 저장하고 조회해야 하는지, 그리고 데이터 사용 패턴(예: 읽기/쓰기 비율)을 파악합니다.성능 요구사항: SLA(Service Level Agreement)에 따른 응답 시간, 데이터 처리량 목표 설정.데이터 크기 예상: 현재와 미래의 데이터 양을 예측하여 확장 가능성을 고려합니다.2. 현재 시스템 이해데이터 모델 분석: 기존의 테이블 구조, 관계, 인덱스 사용 현황 검토.쿼리 프로파일링:EXPLAIN 또는 EXPLAIN ANALYZE 명령어를 사용해 쿼리 실행 계획 확인.느린 쿼리..

Spring 2025.03.02

토스 러너스하이 서버 1기 백엔드 과정 후기

토스 러너스 하이란?토스 러너스 하이는 개발 실무 경력이 있는 서버 개발자를 위한 프로그램입니다. 2024년 12월 16일부터 2025년 1월 16일까지 약 한 달간 진행된 교육에 참여할 수 있었습니다. 아 참고로 이번이 처음으로 시행하는 서버 1기였습니다 ㅎㅎ 2025년부터는 추가 기수를 모집할 예정이라고 하니, 1기 모집과정이 궁금하신 분들은 모집요강 을 확인해 보시면 좋을 것 같습니다.  러너스하이해또 모집!!저는 글또 커뮤니티에서 활동하고 있는데, 우연찮게도~? 글또의 백엔드 개발자분들 중에서도 토스 러너스 하이에 참여하시는 분들이 계셨습니다. 글또에서는 총 23분이 참여하신걸 확인했습니다. 저는 바로 노션 팀 페이지를 만들고 함께 달릴분들을 모집했고 결과적으로는 9분과 함께 서로의 작업물을 공유..

활동 2025.02.10

DLQ 적용기

Dead Letter Queue (DLQ)란 무엇인가?DLQ는 정상적으로 처리되지 못한 메시지들을 저장하는 특별한 큐입니다.(카프카에서는 단순한 토픽입니다) DLQ의 본질은 특정 횟수 이상의 재시도 후에도 메시지 처리가 실패하거나 복구할 수 없는 오류가 발생했을 때 해당 메시지를 DLQ로 이동시켜 시스템이 계속 정상적으로 작동하면서 메시지를 손실하지 않고, 추후에 메시지를 검토하거나 재처리할 수 있도록 보장하는 방법입니다. DLQ가 필요한 이유 기존에는 isPublish라는 컬럼을 이벤트 소싱 패턴에 적용시켜놔서 이벤트 발송 실패시 시스템 내부적으로 처리하고 있었습니다. 처리량과 실패율이 낮아 별도의 DLQ가 필요없어보였지만 솔루션 연동과 고객사들이 증가함에 따라 미리 예방하는 차원에서 현재 시점에서 미..

Spring 2025.01.18

[2024] Google Cloud Study Jam 후기

안녕하세요, 백엔드 개발자로서 Google Cloud Study Jam 2024의 AI & ML 과정을 모두 수료한 경험을 공유하고자 합니다. 한달 가량 시간을 소요해 과정을 수료할 수 있었습니다. Beginner부터 Advanced까지의 여정을 통해 얻은 인사이트와 후기를 작성해봤습니다. 1. 학습 과정 개요 Beginner 과정처음 AI/ML을 접하는 백엔드 개발자로서 기초적인 머신러닝 개념부터 차근차근 학습했습니다. Generative AI의 개념과 전통적인 머신러닝과의 차이점을 학습하고 Google Cloud의 핵심 서비스들을 살펴볼 수 있었습니다,특히 다음과 같은 부분들이 인상적이었습니다.BigQuery와 같은 데이터 분석 도구의 강력함AI Platform의 기본적인 사용법머신러닝의 기초 개념들..

활동 2025.01.05

잘하는 개발자란?

토스 러너스 하이를 지원하며 받은 질문 중 잘하는 개발자란?'에 대해 깊이 고민해 보았다. '잘하는 개발자란?' 너무나도 흥미로운 질문에 필자의 생각을 정리해 봤다. 우선 '잘하다'라는 뜻은 무엇일까? 사전적 의미를 살펴보자.옳고 바르게, 또는 좋고 훌륭하게 하다.익숙하고 능란하게 하다.평탄하고 만족하게 하다.버릇으로 자주 하다. 이렇듯 '잘하다'의 뜻은 상황, 문제, 또는 일에 대한 통찰력과 분별력을 바탕으로 최선의 결과를 만들어내는 행위를 뜻한다. 이런 행위를 특정 분야에서 오랜 시간에 걸쳐 익히고 능숙해진 것은 전문성을 가졌다고 볼 수 있으며 이런 전문성을 가진 사람을 전문가라고 부른다. 그렇다면 '잘하는 개발자'란 무엇인가? 단순히 맡은 일을 원활히 수행하고 가치 있는 결과물을 창출하는 사람일까?..

기타 2024.12.19

[2024] Google Cloud Study Jam 신청

구글 클라우드에서 교육을 하고 있는 것을 처음 알게된 것은 geekNews이었다. 정보를 찾아보다 구글 클라우드 교육이 있기에 재밌어보여 신청하게 됐다.(나만 빼고 이런 재밌는걸?..)  필자는 머신러닝을 한번쯤은 공부해보고 싶었기 때문에 정말 좋은 기회라고 생각했다. 처음에는 AI란 무엇인가에 대한 간단한 개념을 알려줬다. 생성형 AI, 머신러닝, 딥러닝, 프롬포트, LLM 전부 익숙한 단어들이지만 해당 개념들의 동작원리에 대해서는 탐구해본적이 없었기에 재밌었다. 해당 과정은 온라인 강의 시청과 직접 수행하는 과제로 이루어져 있는 것 같았다. 아래의 과정을 전부 듣고 수료를 하게 되면 다음과 같은 상품을 주는데 가방이 너무 멋있어서 신청하게 된 것도 있다..  총 25개의 학습자료가 있으며, 완료시간은..

활동 2024.12.19

JSON 직렬화가 왜 안돼?..

개요A서버에서 B서버로 body를 전달해주는 테스트를 하던 도중 필드 하나가 미전달 되는 현상이 지속적으로 발생했습니다. 해당 이슈를 해결하기 위해 다방면으로 고민했던 과정과 해결방안을 작성했습니다. 해결과정dto는 아래와 구성했고 해당 객체를 body에 담아 전달해주는 로직을 작성하고 있었습니다. 여느때와 다름없는 작업이었지만 isDelete 필드만 전달 되지 않는 현상이 발생하고 있었습니다. 간단한 문제라고 생각했기에 큰 문제가 아니라고 생각했지만 고난의 시작이었습니다ㅠ..data class jacksonTest( val id : String, val name : String, val isDelete : String, val createdAt : LocalDateTime) 이렇게..

Kotlin 2024.11.24

undertow VS tomcat 비동기 처리(Feat.이벤트루프란?)

Undertow와 Tomcat의 비동기 처리Undertow와 Tomcat은 자바 기반 웹 서버인건 동일하지만 비동기 I/O 처리하는 방식은 다릅니다. 이 둘에 대한 차이점과 어떠한 원리로 동작 하는지 살펴보겠습니다. 설명을 드리기에 앞서 undertow에서 비동기 프로그래밍을 처리할때 중요한 개념인 이벤트 루프에 대해 소개하겠습니다.  이벤트 루프(Event Loop)란?이벤트 루프는 비동기 프로그래밍 모델에서 중요한 역할을 하는 개념으로 싱글 스레드 환경에서 비동기 처리를 지원하기 위해 사용됩니다. 이벤트를 큐에 넣고 큐에 있는 이벤트를 하나씩 처리하는 방식(콜스택&큐)으로 동작합니다. 이러한 이벤트 루프의 순환 과정을 통해 실시간으로 이벤트를 처리하며 동시성을 관리하고 효율적으로 자원을 사용할 수 있..

Spring 2024.11.09

MSA 환경에서의 @JsonProperty 활용

데이터 필드 불일치 문제필자는 MSA 환경에서 여러 서비스 간에 데이터를 주고받고 데이터 필드명을 일치시킬 때 @JsonProperty를 사용하던 중 이슈가 발생했습니다. 바로 A서버에서 매핑한 데이터를 B서버에서 받지 못하는 상황이였습니다. 많은 분들이 @JsonProperty를 사용해보셨을 것 같고 저 또한 유용하게 사용하고 있었지만 동일한 JSON 객체를 2개 이상의 서버에서 연동시키며 사용해봤던 경험은 없었기에 이슈에 대한 해결방안을 공유하고자 글을 작성했습니다. @JsonProperty의 사용과 제한사항@JsonProperty는 내부 서버 통신에서만 매핑을 수행합니다. 즉 해당 서버 내부에서만 필드명이 변환되고 외부 서버와 통신할 때는 적용되지 않습니다. 앞선 이유 때문에 외부와 연동된 서버에서..

Spring 2024.10.13

[오픽OPIC] 첫 오픽 IH 후기

오픽에 대한 생각을 작년 이맘때쯤부터 생각했었는데 스택오버플로우나 공식문서를 보는데 큰 불편함이 없었기에 오픽이 과연 필요할까?? 싶은 생각이 들기도 해서 미루고만 있었습니다.(사실 귀찮음이...) 그러다 올해 더 이상 미루기도 좀 그렇고 새로운 도전을 해보고 싶어서 월요일(8/12)에 신청을 해서 토요일(8/17)에 보는 시험으로 신청했습니다. 필자는 토종 한국인으로 성인이 된 이후로 영어공부는 해본적도 없고 토익 점수도 없습니다. 하지만 미국 애니메이션과 팝송으로 영어에 대한 단련이 되어있다고 생각했기에(??) 자신감이 넘치는 상태였습니다. 예전에 지인분이 주셨던 오픽 책에는 먼지가 가득 쌓여있어서 책으로 공부하려는 생각은 고이 접었습니다. 오픽노잼 유튜브로 공부하시는 분들이 많으신 것 같아 저도 오..

활동 2024.08.26