Sto cercando di analizzare un file semplice, e voglio sapere tra:Qual è un parser più veloce per XML?
XML::Simple
XML::Smart
LibXML
che uno è più veloce?
Sto cercando di analizzare un file semplice, e voglio sapere tra:Qual è un parser più veloce per XML?
XML::Simple
XML::Smart
LibXML
che uno è più veloce?
XML :: LibXML è il più veloce, vedere i benchmark allo Ways to Rome.
Può avere o meno importanza per un "file semplice" (che presumo vorrebbe dire che non è troppo grande).
C'è anche XML :: Fast che sembra essere un concorrente serio. XML :: Simple può usare XML :: LibXML sotto il cofano, ma lo sto ancora vedendo come la principale perdita di CPU nei miei test CalDAV in questo momento.
Vale la pena provarlo se la velocità è una considerazione importante per te.
Facile: utilizzare XML :: LibXML, che ha il vantaggio di utilizzare una libreria scritta in C. Implementa anche il DOM familiare. XML :: Simple non è né semplice, [né sostenuto dal suo autore] (https://metacpan.org/module/XML::Simple#STATUS-OF-THIS-MODULE). (Non sono qualificato per commentare XML :: Smart, ma a giudicare dall'esempio nei documenti, non mi piacerebbe molto). Se hai documenti molto grandi che devono essere trasmessi in streaming, usa invece [XML :: Twig] (https://metacpan.org/module/XML::Twig). – amon
@amon - XML :: Simple e XML :: Smart utilizzano entrambi expat per analizzare XML, che è scritto anche in C. – Quentin
"Streaming" è anche possibile con 'XML :: LibXML', basta provare' XML :: LibXML :: Reader' o 'XML :: LibXML :: SAX'. –