본문 바로가기
728x90
SMALL

Python/API9

[FastAPI] FastAPI와 DB(MySQL) 연결하기 1. 이 글의 목표 이미 존재하는 별도의 MySQL DB를 FastAPI에서 ORM을 이용해서 가져올 수 있다. 2. FastAPI와 MySQL(DB) 연결하기 - 디렉터리 구조 . ├── app.py ├── models.py └── database.py - 필요 모듈 설치 pip install fastapi pip install pydantic pip install SQLAlchemy pip install mysql - database.py : 기존에 존재하는 database를 sqlalchemy를 이용해 연결해주는 파일 from sqlalchemy import * from sqlalchemy.orm import sessionmaker DB_URL = 'mysql+pymysql://{USERNAME}:.. 2022. 11. 30.
ORM vs SQL Mapper 1. 글을 작성하게 된 이유 Rest API를 만들면서 생겨난 이슈사항이다. FastAPI를 이용해 request가 왔을 때 response를 해주는 Rest API를 만들고 있었다. response를 위해서는 기존에 만들어진 db(mysql)에서 데이터를 가져와 미리 만들어진 분석 코드를 실행시켜 데이터 분석 결과를 결과값으로 응답해주어야 했다. 이때 기존에 만들어진 db에서 데이터를 어떻게 가져와야 할까 라는 고민이 생겼다. ORM이 좋은 방법일까 아니면 SQL Mapper가 좋은 방법일까 장단점에 대해 비교해보자. 2. ORM vs SQL Mapper ORM 이란? ORM(Object-relational mapping)을 단순하게 표현하면 객체와 관계와의 설정이라 할 수 있다. OOP(Object .. 2022. 11. 5.
[FastAPI] FastAPI를 이용한 서버 구축 1. 글을 쓰게 된 계기 앞에 포스팅에서 FastAPI를 쓰게 된 이유를 나열했다. FastAPI 간단 요약 특징들 빠름 : NodeJS 및 Go 와 동등한 매우 높은 성능 (Starlette 및 Pydantic 덕분에). 사용 가능한 가장 빠른 Python 프레임워크 중 하나입니다. 빠른 코딩 : 기능 개발 속도를 약 200%~300% 증가시킵니다. 버그 감소 : 인간(개발자)이 유발하는 오류의 약 40%를 줄입니다. 직관적 : 훌륭한 편집기 지원. 어디서나 완성 . 디버깅 시간이 적습니다. Easy : 사용하고 배우기 쉽도록 설계되었습니다. 문서를 읽는 시간이 줄어듭니다. Short : 코드 중복을 최소화합니다. 각 매개변수 선언의 여러 기능. 버그가 적습니다. 강력함 : 프로덕션 준비 코드를 가져옵.. 2022. 10. 24.
728x90
LIST