Туроии таҷрибаи кор бо Kafka ва FastStream
Python
Кай вақт мо метавонем дар Producer фармони commit занем? Чӣ тавр дуболариро дар вақти commit-и дастӣи batch пешгирӣ кардан мумкин аст?
Меъёри се таблица пешниҳод мешавад: 1. Истифодабарандагон (users): - id (идентификатори беназири истифодабаранда). - name (номи истифодабаранда). 2. Курсҳо (courses): - id (идентификатори беназири курс). - name (номи курс). - price (нархи курс). 3. Курсҳои донишҷӯён (student_courses): - id (идентификатори сабт). - student_id (идентификатори истифодабаранда). - course_id (идентификатори курс). Талаб: Ҳамаи истифодабарандагонро, ки даромади зиёда аз 10 000 доштаанд, дар формати зерин нишон диҳед: - user_name (номи истифодабаранда). - total_price (суммамуштари харид). Коди оғозӣ select * from users limit 10; select * from courses limit 10; select * from student_courses limit 10;
Оё имкон дорад, ки итератор ва генератор беинтиҳо созем? Барои ин чӣ лозим аст?
Чӣ бояд кард бо чанки мушкил, ки доимӣ истисноҳоро ҳангоми коркард ба вуҷуд меорад? Чӣ гуна нағз нагардад ва ба пеш равад?
```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]: # връща партида данни или None ... async def commit(self, chunks: List[Chunk]) -> None: # потвърждава успешната обработка на партидите ... 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("партиијата е премногу голема") # обработка на податоците ... 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("грешка, но продолжуваме:", e) continue if __name__ == "__main__": asyncio.run(process()) ```
Дар бораи декораторҳо дар Python нақл кунед: ин чӣ намуна аст ва чӣ гуна декоратор бо аргументҳоро амалӣ кардан мумкин аст?
Тавзеҳ диҳед рафтори функсия бо аргументи тағйирёбандаи пешфарз. Чӣ мебинанд чопҳо?
Ҳикояи як лоиҳоти охирини худро, ки ба дили ту расидааст, нақл кун. Лоиҳа чӣ буд, ту дар он чӣ кор мекардӣ ва чаро он ба ту таъсир расонд?
Принсипи ивазкунии Лисков — бештар нақл кунед
Дар бораи дастаи ҳозираи худ ва лоиҳаҳо дар [банка/компания] нақл кунед
Дар бораи принсипҳои OOP гап занед: инкапсулятсия, мерос, полиморфизм, абстраксия
Ширкати мо дар бораи мо чӣ медонед?
Дар бораи истифодаи dataclass дар лоиҳаатон ва чаро онҳоро интихоб кардед, нақл кунед
Чӣ тавр байни чанд пешниҳод интихоб мекунед? Барои шумо чӣ муҳим аст?
агар total_size > self.max_batch_size: raise ValueError("бача хеле калон аст")
Дар бораи принсипҳои SOLID нақл кунед