Uvicorn ইনস্টল এবং সেটআপ

Web Development - ফাস্টএপিআই (FastAPI) - FastAPI সেটআপ এবং ইনস্টলেশন
217

Uvicorn হলো একটি lightning-fast ASGI (Asynchronous Server Gateway Interface) সার্ভার, যা Python-ভিত্তিক অ্যাসিঙ্ক্রোনাস ওয়েব অ্যাপ্লিকেশন চালানোর জন্য ব্যবহৃত হয়। FastAPI অ্যাপ চালানোর জন্য Uvicorn খুবই গুরুত্বপূর্ণ।


সিস্টেমের প্রয়োজনীয়তা

  • Python 3.7 বা এর পরবর্তী সংস্করণ।
  • প্যাকেজ ম্যানেজার pip

Uvicorn ইনস্টলেশন

Uvicorn ইনস্টল করতে pip ব্যবহার করুন:

pip install uvicorn

Uvicorn ইনস্টল হওয়ার পর এর সংস্করণ যাচাই করতে:

uvicorn --version

ভার্চুয়াল এনভায়রনমেন্টে ইনস্টল (ঐচ্ছিক কিন্তু সুপারিশকৃত)

প্রজেক্টের ডিপেনডেন্সি আলাদা রাখতে ভার্চুয়াল এনভায়রনমেন্ট তৈরি করুন:

python -m venv env

এবং সক্রিয় করুন:

  • Windows:

    .\env\Scripts\activate
    
  • macOS/Linux:

    source env/bin/activate
    

এরপর Uvicorn ইনস্টল করুন:

pip install uvicorn

একটি উদাহরণ FastAPI অ্যাপ চালানো

FastAPI অ্যাপ কোড

একটি ফাইল তৈরি করুন, যেমন app.py, এবং নিচের কোড লিখুন:

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
    return {"message": "Hello, Uvicorn!"}

@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
    return {"item_id": item_id, "query": q}

Uvicorn ব্যবহার করে অ্যাপ চালানো

এখন Uvicorn ব্যবহার করে অ্যাপ চালান:

uvicorn app:app --reload
  • app:app:
    প্রথম app হল ফাইলের নাম (app.py), এবং দ্বিতীয় app হল FastAPI অ্যাপের অবজেক্ট।
  • --reload:
    ডেভেলপমেন্টে পরিবর্তনের সময় স্বয়ংক্রিয়ভাবে সার্ভার রিলোড করার জন্য।

ব্রাউজারে অ্যাপ অ্যাক্সেস করা

কমান্ড লাইন আউটপুটে একটি বার্তা দেখতে পাবেন:

Uvicorn running on http://127.0.0.1:8000

ব্রাউজারে গিয়ে http://127.0.0.1:8000 এ গেলে অ্যাপটি কাজ করছে কিনা তা যাচাই করতে পারবেন।


Uvicorn সার্ভারের অতিরিক্ত কনফিগারেশন

১. পোর্ট পরিবর্তন করা

ডিফল্ট পোর্ট পরিবর্তন করতে --port ফ্ল্যাগ ব্যবহার করুন:

uvicorn app:app --reload --port 9000

২. হোস্ট পরিবর্তন করা

ডিফল্টভাবে Uvicorn localhost এ চলে। অন্য ডিভাইস থেকে অ্যাপ অ্যাক্সেস করতে 0.0.0.0 হোস্ট ব্যবহার করুন:

uvicorn app:app --host 0.0.0.0 --reload

৩. প্রোডাকশন মোড

--reload ডেভেলপমেন্টের জন্য। প্রোডাকশনে ব্যবহার করতে এটি বাদ দিন এবং অতিরিক্ত অপশন প্রয়োগ করুন:

uvicorn app:app --host 0.0.0.0 --port 80

Docker-এ Uvicorn ব্যবহার (ঐচ্ছিক)

Uvicorn Docker কন্টেইনারে চালাতে পারেন। Dockerfile উদাহরণ:

FROM python:3.9-slim

WORKDIR /app

COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt

COPY . .

CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "80"]

এরপর Docker কন্টেইনার তৈরি করে চালান।


Uvicorn সেটআপ করা খুবই সহজ, এবং এটি FastAPI অ্যাপ চালানোর জন্য আদর্শ। ডেভেলপমেন্ট এবং প্রোডাকশন উভয়ের জন্য Uvicorn নির্ভরযোগ্য এবং উচ্চ কার্যক্ষম।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...