Archive

Archive for May, 2017

JSON und Perl, aber schnell

May 22nd, 2017 No comments

Mit dem JSON-Modul kann man JSON in Perl sehr bequem verarbeiten. Die Sache hat nur einen Haken, es ist langsam.

Dazu muss man wissen, dass es für JSON zwei Backend-Module gibt: perl-JSON-PP und perl-JSON-XS. perl-JSON-PP ist “pure Perl”, während perl-JSON-XS in C geschrieben ist.

Welches Backend man benutzt lässt sich recht leicht mit folgendem Code überprüfen:


#!/usr/bin/perl

use strict;
use warnings;
use JSON;

my $json = new JSON;
print "Backend: ".scalar($json->backend)."\n";
exit;

Durch den Wechsel des Backends ist die Laufzeit meines Scripts, das etwas über 2000 JSON-Dateien durcharbeitet von 33 Minuten auf 4 Minuten(!) gefallen.
JSON::XS ist in meinem konkreten Anwendungsfall als um den Faktor 8 schneller.

Categories: Linux Tags: