🔸وقتی هر میلیثانیه مهمه: WebSocket بهجای HTTP
🔹فرض کن یه سایت صرافی ساختی. قیمت دلار باید لحظهای به کاربر نشون داده بشه.
اگه بخوای با HTTP کار کنی باید هر چند ثانیه یه بار یه درخواست جدید بفرستی و سرور جواب بده. هم سرور خسته میشه، هم کاربر حرص میخوره!
راهحل چیه؟ وب سوکت
وب سوکت مثل یه تونل دائمی بین کلاینت و سروره. یه بار وصل میشی، بعد از اون فقط دیتا بینشون رد و بدل میشه، بدون منتظر موند.
و سمت کلاینت (تو JS مثلاً):
نتیجه؟ ارتباط زنده، سریع و دوطرفه.
از اینجا به بعد فقط کافیه دیتات رو از سرور پوش کنی، بدون نیاز به درخواست جدید.
#WebSocket #FastAPI #بک_اند #RealTime #پایتون #شبکه
🔹فرض کن یه سایت صرافی ساختی. قیمت دلار باید لحظهای به کاربر نشون داده بشه.
اگه بخوای با HTTP کار کنی باید هر چند ثانیه یه بار یه درخواست جدید بفرستی و سرور جواب بده. هم سرور خسته میشه، هم کاربر حرص میخوره!
راهحل چیه؟ وب سوکت
وب سوکت مثل یه تونل دائمی بین کلاینت و سروره. یه بار وصل میشی، بعد از اون فقط دیتا بینشون رد و بدل میشه، بدون منتظر موند.
یه مثال واقعی با پایتون (FastAPI + WebSocket):
from fastapi import FastAPI, WebSocket
app = FastAPI()
@app.websocket("/ws")
async def websocket_endpoint(websocket: WebSocket):
await websocket.accept()
while True:
data = await websocket.receive_text()
await websocket.send_text(f"پیامت دریافت شد: {data}")
و سمت کلاینت (تو JS مثلاً):
const socket = new WebSocket("ws://localhost:8000/ws");
socket.onmessage = (event) => {
console.log("Server:", event.data);
};
socket.onopen = () => {
socket.send("سلام از کلاینت!");
};نتیجه؟ ارتباط زنده، سریع و دوطرفه.
از اینجا به بعد فقط کافیه دیتات رو از سرور پوش کنی، بدون نیاز به درخواست جدید.
#WebSocket #FastAPI #بک_اند #RealTime #پایتون #شبکه
@PythonFarsi2024