2013-07-15 29 views
5

Tôi cố gắng để phân tích một tập tin đơn giản, và tôi muốn biết giữa:Trình phân tích cú pháp nhanh hơn cho XML là gì?

  • XML::Simple
  • XML::Smart
  • LibXML

cái nào là nhanh hơn?

+0

Dễ dàng: Sử dụng XML :: LibXML, có lợi ích khi sử dụng thư viện được viết bằng C. Nó cũng triển khai DOM quen thuộc. XML :: Đơn giản không đơn giản, [cũng không được xác nhận bởi tác giả] (https://metacpan.org/module/XML::Simple#STATUS-OF-THIS-MODULE). (Tôi không đủ điều kiện để nhận xét về XML :: Thông minh, nhưng xét theo ví dụ trong tài liệu, tôi sẽ không thích nó nhiều). Nếu bạn có các tài liệu rất lớn cần được phát trực tiếp, hãy sử dụng [XML :: Twig] (https://metacpan.org/module/XML::Twig) để thay thế. – amon

+0

@amon - XML ​​:: Đơn giản và XML :: Thông minh cả hai sử dụng người nước ngoài để phân tích cú pháp XML, cũng được viết bằng C. – Quentin

+0

"Streaming" cũng có thể với 'XML :: LibXML', chỉ cần thử' XML :: LibXML :: Reader' hoặc 'XML :: LibXML :: SAX'. –

Trả lời

8

XML :: LibXML là nhanh nhất, xem điểm chuẩn tại Ways to Rome.

Có thể hoặc không quan trọng đối với "tệp đơn giản" (mà tôi giả định có nghĩa là nó không quá lớn).

1

Ngoài ra còn có XML :: Nhanh mà dường như là một ứng cử viên khá nghiêm túc. XML :: Đơn giản có thể sử dụng XML :: LibXML dưới mui xe, nhưng tôi vẫn nhìn thấy nó như là cống CPU chính trong thử nghiệm CalDAV của tôi ngay bây giờ.

Bạn nên thử nếu tốc độ là sự cân nhắc chính cho bạn.

Các vấn đề liên quan