Vậy fastAPI là gì: FastAPI framework, high performance, easy to learn, fast to code, ready for production

Khái niệm

FastApi là 1 web framework dùng để build API có hiệu năng cao, code dễ ẹc, đơn giản nhưng cũng hỗ trợ tốt cho việc làm sản phẩm.

974070e4-c157-4f2c-a706-b130f5589207.png

Đặc điểm:

  • Fast: Hiệu suất cao ngang với NodeJS và Go.
  • Fast to code: Code nhanh hơn, tốc độ code các features tăng khoảng 200 đến 300 %.
  • Fewer bugs: do đơn giản nên giảm số bugs của developper đến 40%.
  • Intuitive: hỗ trợ code dễ hơn với tự động gợi ý, debug cần ít thời gian hơn so với trước.
  • Easy: được thiết kế sao cho dễ dùng dễ học.
  • Short: Tối thiểu việc lặp code. Các tham số truyền vào có nhiều tính năng. Ít bugs.
  • Robust: hiệu năng mạnh mẽ, có thể tương tác API qua docs.

Cài đặt

Yêu cầu: Python 3.6+.

FastAPI được build dựa trên OpenAPI (trước có tên Swagger), phần web được support bởi Starlette, còn phần data được support bởi Pydantic.

FastAPI CLI

Để cài đặt framework này trên Ubuntu, bạn cần phiên bản python ≥≥ 3.6.

pip install fastapi

Bạn cũng cần ASGI server khi deploy sản phẩm như Uvicorn hoặc Hypercorn.

pip install uvicorn

Nói sơ qua về ASGI 1 chút, ASGI kế thừa từ WSGI. Mà WSGI là 1 chuẩn giao tiếp giữa web server và Python application server. Trước thì có mod_python của Apache nhưng do không phát triển và không an toàn nên WSGI sinh ra. WSGI có những tác dụng như sau:

  • WSGI mang tính linh hoạt: dev có thể chuyển đổi thành phần web như chuyển từ Gunicorn sang uWSGI.
  • WSGI xử lý nhiều request cùng lúc thay webserver và quyết định request nào được chuyển tới application web. 
Nếu như WSGI là tiêu chuẩn cho các synchronous Python appsthì ASGI là tiêu chuẩn cho cả synchronous và asynchronous Python apps. ASGI phù hợp với tất cả ứng dụng sử dụng WSGI do có cơ chế tương thích ngược.

Comment