Welche Art von Problemen (falls vorhanden) wäre es die Kombination von asyncio mit multiprocessing?

Als fast jeder ist sich dessen bewusst, wenn Sie zum ersten mal threading in Python gibt es das GIL macht das Leben Elend für die Menschen, die wirklich wollen, zu tun processing in parallel - oder geben es zumindest eine chance.

Ich bin derzeit auf der Suche an, die die Umsetzung so etwas wie das Reaktor-Muster. Effektiv möchte ich für eingehende socket-verbindungen auf einem thread-like, und wenn jemand versucht, zu verbinden, zu akzeptieren, dass die Verbindung und es weitergeben an einen anderen thread-wie für die Verarbeitung.

Bin ich (noch) nicht sicher, welche Art von laden ich vielleicht vor. Ich weiß, es ist derzeit setup-2MB-cap auf eingehende Nachrichten. Theoretisch könnten wir Tausende pro Sekunde (obwohl ich nicht weiß, wenn praktisch wir gesehen haben, etwas in der Art). Der Zeitaufwand für die Verarbeitung einer Nachricht nicht furchtbar wichtig, obwohl offensichtlich schneller wäre besser.

Ich war auf der Suche in den Reaktor-Muster und entwickelte ein kleines Beispiel für die Verwendung der multiprocessing Bibliothek, die (zumindest im Test) scheint zu funktionieren nur fine. Aber jetzt/bald haben wir die asyncio - Bibliothek zur Verfügung, die behandeln würden, die Ereignis-Schleife für mich.

Dort irgendetwas ist, was könnte mich beißen durch die Kombination asyncio und multiprocessing?

InformationsquelleAutor Wayne Werner | 2014-01-16
Schreibe einen Kommentar