Kafka va FastStream bilan ish tajribangiz haqida gapiring
Python
Producer'da commit chaqirishimiz mumkin bo'lgan vaqtda? Qo'lda partiya commit qilishda takrorlarni qanday oldini olish mumkin?
Uchun uchastkalar: 1. Foydalanuvchilar (users): - id (foydalanuvchi identifikatori). - name (foydalanuvchi nomi). 2. Kurslar (courses): - id (kurs identifikatori). - name (kurs nomi). - price (kurs narxi). 3. Talaba kurslari (student_courses): - id (kiritish identifikatori). - student_id (foydalanuvchi identifikatori). - course_id (kurs identifikatori). Talab: 10 000 dan ortiq summada kurs sotib olgan barcha foydalanuvchilarni quyidagi formatda ko'rsatish: - user_name (foydalanuvchi nomi). - total_price (umumiy xarid summasi). Boshlang'ich kod select * from users limit 10; select * from courses limit 10; select * from student_courses limit 10;
Qanday qilib muammo tug'diradigan bo'lak bilan nima qilish kerak, u doimiy ravishda istisnolarni chaqiradi? Qanday qilib siklga tushmasdan davom etish mumkin?
Cheksiz iterator va generator yaratish mumkinmi? Buning uchun nima kerak?
```python import asyncio from typing import List, Optional class Chunk: def __init__(self, items: List[dict]): self.items = items @property def size(self) -> int: return len(self.items) class Producer: async def next(self) -> Optional[Chunk]: # ma'lumotlar partiyasini yoki None ni qaytaradi ... async def commit(self, chunks: List[Chunk]) -> None: # muvaffaqiyatli ishlov berishni tasdiqlash ... class Consumer: max_batch_size = 100 async def consume(self, chunks: List[Chunk]) -> None: total_size = sum(chunk.size for chunk in chunks) if total_size > self.max_batch_size: raise ValueError("partiya juda katta") # ma'lumotlarni qayta ishlash ... producer = Producer() consumer = Consumer() async def process(): while True: chunk = await producer.next() if chunk is None: break try: await consumer.consume([chunk]) await producer.commit([chunk]) except Exception as e: print("xato, ammo davom etadi:", e) continue if __name__ == "__main__": asyncio.run(process()) ```
Python'dagi dekoratorlar haqida gapiring: bu qanday shablon va argumentlar bilan dekoratorni qanday amalga oshirish mumkin?
So'nggi loyihalaringizdan biri haqida gapirib bering, yuragingizga ta'sir qilgan. Loyihaning nima ekanligi, aniq nima qilganingiz va nima uchun yuragingizga ta'sir qilganini ayting.
O'zgartiriladigan standart argument bilan funksiyaning xulqini tushuntiring. Chop etishlar nima ko'rsatadi?
Liskov o'rnini almashtirish prinsipi — batafsilroq aytib bering
Hozirgi jamoangiz va [bank/kompaniya] loyihalari haqida gapiring
OOP prinsiplari haqida gapiring: inkapsulyatsiya, meros, polimorfizm, abstraktsiya
Loyihangizda dataclasslardan foydalanish va ularni nima uchun tanlaganingiz haqida gapiring
Bizning kompaniyamiz haqida nima bilasiz?
Bir nechta takliflar orasidan qanday tanlaysiz? Siz uchun nima muhim?
agar total_size > self.max_batch_size: raise ValueError("partiya juda katta")
SOLID tamoyillari haqida gapiring