Karte

Dominik Heidler dominik at heidler.eu
Fr Aug 28 00:54:39 CEST 2015


Am 27.08.2015 um 23:37 schrieb delphiN:
> Auch ich finde es super, das sich in Richtung Monitoring mal wieder
> ein bisschen etwas tut. Auch steht ein eigener OSM-Tile-Renderer sogar
> auf unserer TODO-Liste :-)
> 
> Ich bin allerdings nicht so ein Fan von Serverseitig gerenderten
> Daten, da dieser Ansatz viel Netzwerklast produziert und einfach nicht
> interaktiv (oder zeitgemäß) ist.
> Trotzdem coole Sache wie weit mapnik mittlerweile entwickelt ist.
> Sowas wäre z.B. für ne Mobile Seite sehr praktisch. Bleib dran!

Der Vorteil von Serverseitigem Rendering ist halt die geringe Rechenlast
im Browser.

Ich habe da ja so eine Wardrive Datenbank. Für die verwende ich das
serverseitige Tile Rendering, da es (ohne komplizierte Tricks, die mir
zu bescheuert sind - von wegen nur die Routerdaten eines
Kartenausschnitts bei einem Mindestzoomlevel vom Server laden) nicht
möglich ist, 30000 Punkte im Browser auf die Karte zu zeichnen, ohne
dass dieser abstürzt.

Der Vorteil der client-javascript Lösung ist natürlich, dass man die
Daten ohne Page reload per AJAX Update aktuell halten kann.


Die Schwierigkeit bei Serverseitigem Rendering ist natürlich das
anklicken der Router. Der client sieht ja nur eine PNG Grafik. Aber das
habe ich auch bei meiner Wardrive Datenbank geschafft: Jeder Klick auf
der Karte wird als AJAX Request an den Server übermittelt, der dann aus
den Klick-Koordinaten den dem Mauszeiger nächsten GPS Punkt aus der
Datenbank ermittelt und ausließt. Wenn man eine für Geo Operationen
geeignete Datenbank verwendet oder diese Funktion (wie ich damals) als
MySQL Stored Procedure implementiert, dauert das auch kurz genug.

> Als nächsten die Knoten!?

Das hier ist ja jetzt eher so eine Art proof of concept.
Ich konvertiere die Daten aus der KML Datei vom Netmon in eine CSV
Datei, die ich dann unter Angabe zusätslicher Style Informationen an
Mapnik gebe.

Natürlich könnte ich auf dieselbe Weise die Router KML parsen und die
Daten darstellen. Das habe ich (incl. einiger zusätslicher Daten) auch
schon aus dem Netmon ausgelesen und in einer MongoDB Datenbank gespeichert.

Da will ich vielleicht erstmal ansetzen: Mapnik könnte die Daten direkt
aus der MongoDB Datenbank auslesen.


Mittelfristig will ich die Router selbstständig crawlen, um bei der
Datenbeschaffung nicht auf den Netmon angewiesen zu sein.

Ansonsten habe ich da noch eine nette Idee: Ich frage mich oft, wenn
mehrere Freifunk-Router um mich herum stehen, bei welchem ich gerade
eingeloggt bin. Ein Tool auf meinem Rechner könnte die BSSID an den
Server schicken, der dann die Liste aller Router durchgeht und die
MAC-Adressen der w2ap Interfaces durchsucht.

Die Langfristige Idee ist natürlich, ein Tool zu schaffen, das Netmon
vielleicht einmal ersetzen könnte.




Mehr Informationen über die Mailingliste franken-dev