GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Welche Linux-IPC-Technik verwenden?

Bei der Auswahl Ihres IPCs sollten Sie die Gründe für Leistungsunterschiede berücksichtigen, einschließlich Übertragungspuffergrößen, Datenübertragungsmechanismen, Speicherzuweisungsschemata, Sperrmechanismusimplementierungen und sogar Codekomplexität.

Von den verfügbaren IPC-Mechanismen hängt die Wahl der Leistung oft von Unix-Domain-Sockets oder Named Pipes (FIFOs) ab. Ich habe einen Artikel über die Leistungsanalyse verschiedener Mechanismen für die Kommunikation zwischen Prozessen gelesen, der darauf hinweist, dass Unix-Domain-Sockets für IPC möglicherweise die beste Leistung bieten. Ich habe anderswo widersprüchliche Ergebnisse gesehen, die darauf hindeuten, dass Rohre besser sein könnten.

Beim Senden kleiner Datenmengen bevorzuge ich Named Pipes (FIFOs) wegen ihrer Einfachheit. Dies erfordert ein Paar Named Pipes für die bidirektionale Kommunikation. Unix-Domain-Sockets erfordern etwas mehr Aufwand für die Einrichtung (Socket-Erstellung, Initialisierung und Verbindung), sind aber flexibler und bieten möglicherweise eine bessere Leistung (höherer Durchsatz).

Möglicherweise müssen Sie einige Benchmarks für Ihre spezifische Anwendung/Umgebung ausführen, um festzustellen, was für Sie am besten funktioniert. Aus der bereitgestellten Beschreibung geht hervor, dass Unix-Domain-Sockets am besten geeignet sind.

Beejs Leitfaden für Unix IPC ist gut für den Einstieg in Linux/Unix IPC.


Ich würde mich für Unix-Domain-Sockets entscheiden:weniger Overhead als IP-Sockets (d. h. keine Kommunikation zwischen Maschinen), aber ansonsten derselbe Komfort.


Linux
  1. So verwenden Sie BusyBox unter Linux

  2. Wie ich Cron unter Linux verwende

  3. Welche Open-Source-Backup-Lösung verwenden Sie?

  4. Welchen Linux-Terminalbefehl verwenden Sie am häufigsten?

  5. Warum verwenden wir „./“ (Punkt-Schrägstrich), um eine Datei unter Linux/Unix auszuführen?

Verwenden Sie Emojis im Mac-Stil unter Linux

So verwenden Sie den grep-Befehl unter Linux/UNIX

Welcher Linux-Befehl

Welche Linux-Distribution soll nach Ubuntu verwendet werden?

Linux gegen Unix

So verwenden Sie den which-Befehl in Linux