Frage

Ich versuche, eine XMPP-Bibliothek (und später einen Server) von Grund auf neu erstellen in Go (obwohl die Sprache selbst ist irrelevant) als Mittel, was ich kann über die XMPP-Protokoll und Server-Software-Entwicklung im allgemeinen zu lernen.

Wie viele von Ihnen wissen, ist XMPP-Protokoll Messaging basiert auf XML, die auf eine enorme Menge an kurzem, aber häufigen XML-Streams ab. Ich denke, dass für solche Anwendungen eines ereignisbasierte XML-Parser sollte besser sein, weil ich nicht brauchte DOM und das alles (korrigiert mich wenn ich falsch liege). Bitte beachten Sie, dass diese Bibliothek für Server gedacht ist, so könnte es viele Fälle auf einmal ausgeführt werden;

Welche der beiden hat eine bessere Leistung und Speichernutzung für diesen Anwendungsfall, libxml2 oder auswandern?

War es hilfreich?

Lösung

Es gibt ein ganzes Projekt widmet sich die Frage nach der XML Performance Beantwortung genannt XML Benchmark .

Die kurze Antwort, meiner Meinung nach, ist libxml2 zu verwenden, aber ich habe andere Überlegungen über die reine Leistung, wie Plattform Verfügbarkeit. Das heißt, es ist in der Regel schneller als auf die neuesten Zahlen Expat nach, obwohl es in den großen Plan der Dinge ziemlich nahe ist.

Und ja, mögen Sie den SAX-Parser verwenden, nicht der DOM-Parser.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top