Etherpad speckt ab – Etherpad-lite

22 Jul

Etherpad krankt bis dato an dem Problem, dass es vor allem auf der Serverseite ein ziemlich aufgeblasenes, resourcenverschwendendes Biest ist. Dieser Umstand ist geschichtlich gewachsen und rührt daher, dass Etherpad ursprünglich dafür konzipiert wurde, die Vorzüge des AppJet Frameworks unter Beweis zu stellen. Diese Wurzeln machen Etherpad auf der Serverseite jedoch behäbig, unhandlich und verschwenden Unmengen an Ressourcen, von der schwierigen Wartbarkeit einmal ganz abgesehen.

Auf der etherpad-dev Mailingliste kam nun heute eine Mail herein, dass ein Fork namens etherpad-lite (https://github.com/Pita/etherpad-lite) existiert, welcher eine Portierung von Etherpad von AppJet auf NodeJS zum Ziel hat. Laut README ergeben sich daraus eklatante Codeeinsparungen u.a. mit folgenden Effekten (siehe https://github.com/Pita/etherpad-lite#readme)

Etherpad Etherpad Lite
Size of the folder 30 MB 1.5 MB
Languages used server side Javascript, Java, Scala Javascript (node.js)
Lines of server side Javascript code 101410 5330
RAM Usage immediately after start 257 MB 16 MB

Man beachte vor den Unterschied zwischen knapp 100000 LOC für AppJet auf der Serverseite vs. knapp 5000 LOC for NodeJS.

Leider kommt dieser Fork für meine Arbeit wohl etwas zu spät, da erst Mitte August mit der offiziellen Veröffentlichung gerechnet wird. So werden im Augenblick essentielle Features wie bsp. Plugins noch nicht unterstützt.

Sobald das Plugin-System funktioniert, scheint es jedoch der Etherpad-Fork der Wahl für zukünftige Weiterentwicklungen zu sein.

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: