최근 포스트

Project : RainMind 개발일지 - 5 [Lock 및 동시성 제어]

3 분 소요

FastAPI 코드를 작성하며 async await 키워드를 많이 사용했었는데, Lock 및 동시성 제어 파트에서도 Spring과 비교하여 정리를 해보면 좋을 것 같다. Spring - Lock 1) synchronized 어떤 자원에 동시에 접근하여 쓰기 연산을 수행하면, 결과...

Project : RainMind 개발일지 - 4 [이벤트 처리 이슈]

1 분 소요

Spring에서 redis enqueue / dequeue를 위해 발행했던 event, FastAPI에서는 해당 기능이 존재하지 않아 직접 event_publisher.py를 이용해야 했었다. Spring에서의 Event 처리, 그리고 FastAPI에서 이를 흉내내어 구현했던 방...

Project : RainMind 개발일지 - 3 [트랜잭션의 원리와 동작]

3 분 소요

코드를 짜다 보니 fastAPI와 spring의 트랜잭션 선언 방식과 원리가 비슷한 것 같기도 하고 다른것 같기도 하고… 정리를 한번 해보려 한다. 느끼는 바는 딱 아래 한문장으로 요약 가능할 것 같다. “Spring은 트랜잭션을 선언적으로 숨기고, FastAPI는 트랜잭션을 명...

Project : RainMind 개발일지 - 2 [주요 설계와 선택 이유]

3 분 소요

하다 보니 재밌다. 일단 기초적인 api들은 모두 완료했고, 테스트 코드 작성까지 완료하였다. 코드 작성하면서 들었던 의문이나 설계상 신경썼던 포인트들을 정리하고자 한다. 1) api 회원가입, 로그인, 로그아웃(+ redis 토큰 블랙리스트 등록), 초단기실황조회, 단기예보조회...

2023 KAKAO BLIND RECRUITMENT 문제풀이

11 분 소요

겨울방학을 알차게 살기 위해 아침에는 코테 연습, 점심에는 네트워크 공부 및 프로젝트 수행을 하고 있다. 코테도 오랜만에 보니까 감이 살짝 떨어졌었는데 반복해서 하다보니 다시 감이 올라오고 있는 것 같다. 뭐든지 꾸준히 하는게 중요한듯 하다. 바로 문제 풀어보겠다. 1. 개인정...

Project : RainMind 개발일지 - 1 [기술 스택 선정과 개요]

1 분 소요

포트폴리오 겸 개발내공 쌓을 겸 작은 프로젝트를 하나 해보기로 했다. 이름은 RainMind, 비가 오는 것을(rain) 알려주겠다는(mind) 뜻이다. 내가 학교 다니면서 비가 오는지 안오는지를 신경쓰지 않는지라 수업 갈때는 비가 안왔다가 올때 비가 내려서 편의점에서 돈을 주고...

2024 KAKAO WINTER INTERNSHIP Coding Test 문제풀이

7 분 소요

학기 종강하고 진짜 오랜만에 글을 쓰는 것 같다. 오랜만에 코딩 테스트 문제를 풀려니 뭔가 새롭게 느껴지기도 하고 실제 기출문제들의 풀이를 기록해놓는 것도 좋겠다 싶어서 새로 카테고리를 하나 만들어서 기록할 것이다. 문제는 프로그래머스에 모두 공개되어 있다. https://sch...

[Minimum Spanning Tree] 최소 신장 트리

2 분 소요

Minimum Spanning Tree 최소 신장 트리(Minimum Spanning Tree)란, 주어진 그래프의 모든 정점들을 연결하는 tree이며 해당 tree edge들의 가중치의 합이 최소인 tree를 말한다. 최소 신장 트리는 여러개 존재할 수 있지만, 그 가중치의 합...

[Maximum Subarray] 최대 부분배열 문제

3 분 소요

최대 부분배열 문제(Maximum Subarray Problem)란, 주어진 배열의 subarray의 원소들의 합의 최댓값을 구하는 문제이다. 모든 배열의 수가 양수이거나 음수일때는 의미가 없다. 모든 수가 양수이면 배열 자체가 답이고, 모든 수가 음수이면 0에 가장 가까운 음수...