새로운 탭 추가 (책 리뷰)
새해를 맞이해서 블로그에 새로운 탭을 추가했습니다. 지난 연말부터 올 초까지 공부하면서 여러 책을 읽었는데, 문득 이런 생각을 했습니다. 서점 홈페이지에 있는 좋은 말만 하는 서평보다는 처음부터 끝까지 공부해 보거나 읽어보면서 느낀 점을 전달해 보면 어떨까? 이런 생각을 하게 된 몇 가지 이유가 있습니다. 1. 기술 서적의 대부분은 번역 ...
새해를 맞이해서 블로그에 새로운 탭을 추가했습니다. 지난 연말부터 올 초까지 공부하면서 여러 책을 읽었는데, 문득 이런 생각을 했습니다. 서점 홈페이지에 있는 좋은 말만 하는 서평보다는 처음부터 끝까지 공부해 보거나 읽어보면서 느낀 점을 전달해 보면 어떨까? 이런 생각을 하게 된 몇 가지 이유가 있습니다. 1. 기술 서적의 대부분은 번역 ...
게으름과 바쁨, 그 사이 올해는 이번 회고를 제외하고 다섯 개의 글밖에 쓰지 못했습니다. 아무래도 여러 일이 겹쳐서 유달리 바빴던 한 해여서 어쩔 수 없었습니다. 우선 규모가 큰 1년짜리 프로젝트의 PL을 맡았습니다. 아래에서 더 돌아보겠지만 굉장히 바쁘고 신경 쓸 일이 많았습니다. 그리고 내년 결혼 준비 때문에 자투리 시간을 내기 어려웠습니다. 올...
개요 Python에서 API 개발을 가장 편하게 할 수 있는 라이브러리는 아무래도 FastAPI 입니다. 스테디셀러인 Flask와 Django도 좋은 선택지라고 할 수 있지만 속도와 러닝 커브 측면, 그리고 구현 편이성을 모두 고려했을 때 FastAPI가 더 나은 선택이라는 생각이 듭니다. 물론 두 가지 모두 지금까지 남겨진 많은 레퍼런스 덕분에 많...
커넥션 풀 커넥션 풀(Connection Pool)이란 향후 데이터베이스에 대한 요청이 필요할 때 커넥션을 재사용할 수 있도록 유지 관리하는 데이터베이스 커넥션에 대한 일종의 캐시입니다. 특히 서버 측 웹 애플리케이션의 경우, 커넥션 풀은 요청 간에 재사용되는 활성 데이터베이스 커넥션 ‘풀’을 메모리에 유지하는 표준적인 방법입니다. [출처] Pyt...
배경 최근 프로젝트에서 FastAPI를 이용해 API 서버를 띄우고 있는데 이 모든 과정이 수동이었습니다. 만약 서버를 중지했다가 재기동하는 경우 직접 명령어를 입력하거나 실행용 쉘 스크립트를 실행해서 API 서버를 다시 띄워야만 했습니다. 너무 번거로운 작업이라 API 서버 띄우는 작업을 리눅스 systemd에 등록하여 서비스화하였습니다. 아래 내...