Sieh dir die Funktion count_pairs an. Wie ist ihre Komplexität? Schreibe eine effizientere Version.
Python
Was ist eine Partition in Kafka? Was ist eine Consumer-Gruppe?
FastAPI ermöglicht die Implementierung von Funktionen sowohl asynchron als auch synchron — wie wirkt sich das auf das Verhalten aus? Wie kann man Anfragen in einer async-Funktion parallelisieren?
Wie werden JOINs auf der PostgreSQL-Seite durchgeführt? Welche Strategien gibt es?
Erzählen Sie mir vom Saga-Muster. Wie haben Sie es bei sich implementiert? Wie haben Sie die Dienste über den Rollback informiert?
Erstellen Sie eine Dockerfile für eine Python-Anwendung, die Folgendes tut: - Verwendet das neueste Python-Image - Setzt das Arbeitsverzeichnis auf /app - Kopiert den Inhalt des aktuellen Verzeichnisses in den Container - Installiert die in requirements.txt aufgelisteten Abhängigkeiten - Öffnet Port 8000 - Führt die Anwendung mit dem Befehl aus: python app.py
Was ist Kapselung? Welche Eigenschaften gibt es aus Sicht von Python?
Warum ist Kapselung notwendig? Welche Risiken bestehen bei direktem Zugriff auf die Objektdaten?
Wie erstellt man eine Datenstruktur, in die man keine Werte einfügen oder ändern kann, aber nach Schlüssel abrufen kann?
# Wie lange dauert es, bis asyncio.run(main()) ausgeführt wird?
broker = KafkaBroker("localhost:9092") app = FastStream(broker) @broker.subscriber("raw_texts_topic", group_id="text_parsers") async def handle_text(text_data: dict): # Parsing und Speichern in der Datenbank dauert ca. 10 Sekunden parse_text_and_save_to_postgres(text_data)
Wie man eine blockierende Funktion aus einer alten Bibliothek handhabt, um die Event-Schleife nicht zu blockieren?
async def get_user(user_id: int, db: AsyncSession): try: user = await db.get(User, user_id) return user finally: await db.close() return None a = await get_user(15, db) # a?
app = FastAPI() def get_db(): db = SessionLocal() try: yield db finally: db.close() def heavy_text_parser(file_id: int, db: Session): # Parsing a file that takes 5 minutes parse_and_save(file_id, db) @app.post("/upload") async def upload_file( background_tasks: BackgroundTasks, db: Session = Depends(get_db) ): file_id = save_file_to_db(db) db.commit() background_tasks.add_task(heavy_text_parser, file_id, db) return {"status": "parsing started"}
Was passiert, wenn der Kafka-Consumer-Pod während der Nachrichtenverarbeitung abstürzt, bevor der Offset bestätigt wird?
Was ist das Objekt, das von einer Funktion mit `yield` zurückgegeben wird, und welche Rückgabetyp-Annotation ist hier anstelle von `list[str]` geeignet?
Erzählen Sie uns ein wenig über sich und Ihre technische Erfahrung.
Wie heißt das Muster, bei dem `Engine` einmal für die Anwendung erstellt wird und einen gemeinsamen Verbindungspool verwaltet?
Was sind die Vorteile eines modularen Monolithen im Vergleich zu Microservices in einer solchen Situation?
Wie konfigurieren Sie eine Anwendung?