fastapi'dan FastAPI, UploadFile, Response fastapi.responses'dan StreamingResponse pydantic'dan BaseModel, field_validator import base64 app = FastAPI() class PdfSchema(BaseModel): filename: str content_type: str data: str # base64 pdf 10мб @app.get("/data", response_model=PdfSchema) async def get_data(): return await service.get_big_data() @app.get("/download") async def download(): with open("big.pdf", "rb") as f: data = f.read() return Response(content=data, media_type="application/pdf") def heavy_pdf_parse(data: bytes) -> dict: # CPU-heavy логика return {"size": len(data)} @app.post("/parse") async def parse(file: UploadFile): content = await file.read() result = heavy_pdf_parse(content) return result @app.get("/users") async def get_users(): users = await repo.get_users() result = [] for u in users: posts = await repo.get_posts(u["id"]) result.append({"user": u, "posts": posts}) return result @app.get("/download-two") async def download_two(): def iterfile(): with open("big.pdf", "rb") as f: yield from f return StreamingResponse(iterfile(), media_type="application/pdf") class service: @staticmethod async def get_big_data(): return { "filename": "file.pdf", "content_type": "application/pdf", "data": base64.b64encode(b"fake").decode(), } class repo: @staticmethod async def get_users(): return [{"id": 1}, {"id": 2}] @staticmethod async def get_posts(user_id: int): return [{"id": 1, "user id": user_id}]
Python
import threading import time soni = 0 def oshirish(): global soni for _ in range(100): hozir = soni time.sleep(0.000001) soni = hozir + 1 thread1 = threading.Thread(target=oshirish) thread2 = threading.Thread(target=oshirish) thread1.start() thread2.start() thread1.join() thread2.join() print(f"Yakuni qiymati: {soni}") 150-200
asyncio.gather() da vazifa xatosi yuzaga kelsa nima bo'ladi? Xatoliklar yo'qolmasligi uchun qanday qilish mumkin?
Magnitda texnik jihatdan murakkab narsalar haqida gapir. U yerda nima qiziqarli edi?
Dasturlashda Go tilidan foydalanasizmi?
Server yoki mijoz tomonida kesh qilish uchun qaysi HTTP so'rov turlari mos keladi?
ACID haqida gapir. Xususan, tranzaktsiyalarni izolyatsiya qilish darajalari haqida. Qaysi darajani ishlatishdi?
Setga K uzunlikdagi N turli satrlarni qo'shish uchun qancha vaqt ketadi?
Kafka orqali asinxron ishlov berish haqida gapir: qanday ma'lumotlar uzatilgan, qanday kalitlar ishlatilgan, qanday qilib ishlov berish tartibi ta'minlangan?
Nima buzilgan yoki degradatsiya qilayotganini qanday bilib oldingiz? Nima qaradingiz?
CREATE TABLE products ( id SERIAL PRIMARY KEY, category VARCHAR(100) NOT NULL, name VARCHAR(255) NOT NULL, description TEXT, price DECIMAL(10, 2) NOT NULL CHECK (price >= 0) );
PostgreSQL'da EXPLAIN va EXPLAIN ANALYZE nima? Haqiqiy o'zgarishlarni amalga oshirmasdan DELETE/UPDATE qanday bajariladi?
Tizimni sozlash va Pinkman haqida eslatmalarni targetAI bilan almashtirish bo'yicha instruktsiya
Botingizda niyatni qanday aniqlab, foydalanuvchini qayerga yo'naltirishni belgiladingiz?
Kontekst menejeri nima, nima uchun kerak va o'zini qanday qilish mumkin?
Python'da qanday ma'lumot turlari mavjud? O'zgartiriladigan va o'zgartirilmaydiganlar haqida gapir.
Nima uchun to'liq matn qidiruvi uchun GIN indeksini tanladingiz? Nima uchun Elasticsearch kabi qidiruv motorlarini ishlatmadingiz?
Rezyumeda yozilganidek, siz Celery yordamida buyurtmalarni 3 sekunddan 50 millisekundgacha optimallashtirdingiz. Aniq nima sekinlashtirgan, nima tashqariga chiqarishni aniqladingiz va natijani qanday o'lchadingiz?
asyncio.create_task() va await coroutine o'rtasidagi farq nima? Vazifa awaitsiz qachon bajariladi?
GIN indeks haqida gapir. Nima uchun PostgreSQLda to'liq matn qidiruvi ishlatilgan va Elasticsearch emas?