XPra, Firefox und ein 1Gb-Arm-Rechner

vorhergehende Artikel in: Linux Raspi
06.10.2021

Ich habe hier schon verschiedentlich über Xpra berichtet und darüber, warum ich es für eine gute Idee halte so etwas wie Gnu Screen auch für graphische Anwendungen zu haben.

Das letzte Mal berichtete ich über die Nutzung von Atom über Xpra - eher eine Fallstudie und Demonstration als eine ernstgemeinte Lösung für ein reales Problem. Ich nutze aber rechenintensivere Anwendungen wie KiCad, das ich auf meinem kleinen Server laufen lasse und mir nur die GUI auf den Rechner hole, an dem ich gerade sitze. Ein weiterer Anwendungsfall, der von mir gerne benutzt wird ist Surfen. Mir gibt das ein gutes Gefühl, Bookmarks nicht über einen komplizierten Sync-Dienst teilen zu müssen - wenn der Browser auf einem Rechner läuft und ich mir nur seine GUI am Schreibtisch anzeigen lasse, kann ich einfach wenn mir danach ist den Rechner neben dem Schreibtisch ausschalten und auf die Couch im Wohnzimmer wechseln - dort verbinde ich mich mit der Xpra-Session und kann nahtlos da weitersurfen, wo ich am Schreibtisch unterbrochen habe.

Ich hatte hin und wieder halbherzige Ansätze und Versuche gemacht, für diesen letztgenannten Anwendungsfall nicht den Server zu brauchen - schließlich geht es dabei nur um Surfen, da muss doch auch weniger Stromverbrauch reichen? Allerdings waren meine Versuche, mit dem Firefox und Chromium auf einem Raspi oder auch einer anderen, leistungsstärkeren Variante bisher immer gescheitert - es war einfach viel zu instabil - ständig stürzten die Browser ab - manchmal sogar bereits wenn nur ein weiterer Tab geöffnet wurde. Das war natürlich völlig unakzeptabel und hat mcih schnell frustriert, so dass ich die Idee immer sehr schnell wieder beiseite legte und mich anderen Dingen zuwandte.

Neulich packte es mich allerdings wieder und ich wollte dem Problem auf den Grund gehen - denn da alle untersuchten Browser mit ähnlichen Instabilitäten zu kämpfen hatten, konnte die Ursache ja eigentlich nicht in einem speziellen Browserproblem zu suchen sein? Ich begann also mit einem blanken Betriebssystem auf aktuellstem Patchstand meine Experimente. Dadurch wurden zunächst meine bisherigen Erlebnisse bestätigt: ein oder zwei Tabs zusätzlich öffnen - egal in welchem Browser - und man konnte auf den Crash warten.

Ich sah auch wieder, dass diese Anwendungen unfassbar viel RAM auffraßen - das könnte unter Umständen die Ursache sein. Wie aber sollte ich ihnen das abgewöhnen? Die Testplattform hatte außerdem immerhin ein Gb RAM - das müsste doch für einen Browser ausreichen? Eine Recherche im Internet brachte mich weiter (was den Firefox angeht - ob der Chromium ähnliche Konfigurationsmöglichkeiten bietet habe ich nicht weiter untersucht): Sie besagte, dass der Firefox unter der Rubrik Performance eine Konfigurationsoption hat die festlegt, wieviele parallele Prozesse die Anwendung startet. Im Screenshot war die Zahl 8 zu sehen - ich dachte: auf einer Plattform wie der hier werden sie doch wohl nicht ebenfalls...? Sie hatten ebenfalls. Ich reduzierte die Anzahl der Prozesse auf 2 und schon konnte ich stundenlang ohne Crashes und Instabilitäten surfen. Auch der RAM-Verbrauch war dadurch spürbar gesunken - waren sonst nach Start der Anwendung bereits 80% des RAM belegt, waren es nun nur noch 50%.

Damit war es auch wieder möglich, XPra in Verbindung mit Xephyr und Blackbox einzusetzen und damit das oben skizzierte Ziel eines Gnu Screen-Ersatzes für dass Surfen im Internet auf einem "Bastelcomputer" umzusetzen. Ich sorgte der Vollständigkeit halber noch mit ZRam für einen schnellen SWAP (für den Fall der Fälle) und damit benötige ich den Server jetzt nur noch zum Programmieren (GitLab!) und fürs Filme und Serien schauen. Das Ziel (Stromersparnis) war erreicht...

Alle Artikel rss Wochenübersicht Monatsübersicht Github Repositories Gitlab Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Fährnisse des Buildprozesses unter Windows

    17.07.2019

    Nachdem ich begonnen hatte, mich mit der Beschleunigung der Berechnung des Mandelbrot-Fraktals unter Zuhilfenahme der Shadereinheiten in Graphikkarten zu beschäftigen und erste Erfolge feiern konnte, wollte ich das mal auf einer richtigen Graphikkarte ausprobieren...

    Weiterlesen...

Neueste Artikel

  • Datenvalidierung UTF8 mit BiDi-Steuerzeichen (TrojanSource 2.0)

    Ich bin heute nochmal inspiriert worden, weiter über die Trojan Source Vulnerability nachzudenken. Meiner Meinung nach bestehen hier noch Probleme - speziell bei Nutzereingaben oder Daten, die über externe Schnittstellen ampfangen werden.

    Weiterlesen...
  • OpenStreetMap Navi als Docker-Container

    Ich habe die auf OpenStreetMap basierende OpenSource Navigationslösung Graphhopper in einen Docker-Container gepackt und als neuestes Mitglied in meinem Docker-Zoo willkommen geheißen.

    Weiterlesen...
  • SQL-Aggregatfunktionen in SQLite als BeanShell-Scripts

    Ich habe neulich über eine Möglichkeit berichtet, SQLite mittels der sQLshell und Beanshell-Skripten um SQL-Funktionen zu erweitern. In diesem Artikel versprach ich auch, über eine solche Möglichkeit für Aggregatfunktionen zu berichten.

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muß damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen GitHub-Repositories findet man hier - meine öffentlichen GitLab-Repositories finden sich dagegen hier.