Jay's Blog
Preview Image

2024 회고

게으름과 바쁨, 그 사이 올해는 이번 회고를 제외하고 다섯 개의 글밖에 쓰지 못했습니다. 아무래도 여러 일이 겹쳐서 유달리 바빴던 한 해여서 어쩔 수 없었습니다. 우선 규모가 큰 1년짜리 프로젝트의 PL을 맡았습니다. 아래에서 더 돌아보겠지만 굉장히 바쁘고 신경 쓸 일이 많았습니다. 그리고 내년 결혼 준비 때문에 자투리 시간을 내기 어려웠습니다. 올...

Image from [here](https://www.techtarget.com/whatis/definition/synchronous-asynchronous-API)

FastAPI에서 동기/비동기 처리에 대한 벤치마크 살펴보기

개요 Python에서 API 개발을 가장 편하게 할 수 있는 라이브러리는 아무래도 FastAPI 입니다. 스테디셀러인 Flask와 Django도 좋은 선택지라고 할 수 있지만 속도와 러닝 커브 측면, 그리고 구현 편이성을 모두 고려했을 때 FastAPI가 더 나은 선택이라는 생각이 듭니다. 물론 두 가지 모두 지금까지 남겨진 많은 레퍼런스 덕분에 많...

Preview Image

SQLAlchemy 커넥션 풀 작동 확인하기

커넥션 풀 커넥션 풀(Connection Pool)이란 향후 데이터베이스에 대한 요청이 필요할 때 커넥션을 재사용할 수 있도록 유지 관리하는 데이터베이스 커넥션에 대한 일종의 캐시입니다. 특히 서버 측 웹 애플리케이션의 경우, 커넥션 풀은 요청 간에 재사용되는 활성 데이터베이스 커넥션 ‘풀’을 메모리에 유지하는 표준적인 방법입니다. [출처] Pyt...

Preview Image

리눅스 systemd에 서비스 등록하기

배경 최근 프로젝트에서 FastAPI를 이용해 API 서버를 띄우고 있는데 이 모든 과정이 수동이었습니다. 만약 서버를 중지했다가 재기동하는 경우 직접 명령어를 입력하거나 실행용 쉘 스크립트를 실행해서 API 서버를 다시 띄워야만 했습니다. 너무 번거로운 작업이라 API 서버 띄우는 작업을 리눅스 systemd에 등록하여 서비스화하였습니다. 아래 내...