Netbeans 7.1, JSLint und jQuery: $ used before defined

Geschrieben von everflux am Dezember 27th, 2011

Seit Netbeans 7.1 ist JSLint als Plugin verfügbar. Mit JSLint wird JavaScript auf (mögliche) Fehler untersucht und diese als Warnungen im Editor angezeigt. (Aufruf mit Rechtsklick innerhalb einer JavaScript Datei und dann „JSLint“ klicken)

Jedoch gibt es dabei auch falsche Warnmeldungen wenn JsLint nicht richtig konfiguriert ist. So warnt mich Netbeans 7.1 dann bei einer JavaScript Datei, als externe Ressource zusammen mit jQuery in eine Webseite eingebunden ist:

„$ was used before it was defined“

Dies lässt sich beheben, indem man die JSLint Konfiguration (Tools->Options->Misc->JSLint) aufruft und dort unter „predefined“ das „$“ deklariert. Leider wurde diese Einstellung bei mir  nicht korrekt gespeichert und hatte auch keine Auswirkungen auf das Verhalten von JSLint. Ich nehme an, dass der Fehler mit einem Update des Plugins behoben wird.

Die Sache mit dem Benutzernamen

Geschrieben von everflux am Dezember 26th, 2011

Die Lufthansa bietet zukünftig nur noch die Online Abrechnung für Kreditkarten an. Dazu ist eine Anmeldung auf www.miles-and-more.kartenabrechnung.de erforderlich. Wie so oft ist hier auch die Angabe eines Benutzernamens erforderlich. Den kann man sich ausdenken – und dabei wird auch darauf hingewiesen, dass man sich diesen „zur Sicherheit“ mit Zahlen anreichern sollte.
Auch habe ich es schon erlebt, dass die korrekte Gross-/Kleinschreibung bei Benutzernamen relevant ist – hier zum Glück nicht. Sonderzeichen, Umlaute und Leerzeichen sind nicht erlaubt. Manche Dienste geben sogar den Benutzernamen fest vor.

Ich frage mich da immer: Muss das so? Wenn ich einen so komplizierten Benutzernamen wählen soll/muss, was wird dadurch wirklich sicherer? Außer natürlich dass ich den Namen sicher bald vergesse oder mir irgendwo aufschreiben muss.

Eine sehr einfache Alternative wäre die E-Mail Adresse eines User als Benutzernamen zu wählen. Und was ist, wenn die sich mal ändert? Dann kann man die ändern und loggt sich zukünftig mit der neuen ein. Oder mit allen, die man registriert hat.  und was ist, wenn der Benutzername öffentlich angezeigt wird, z.B. in Foren oder Communities? Dann ergänzt man einfach ein zusätzliches Attribut, den öffentlich angezeigten Namen.

Hab ich was übersehen, oder ist die Lösung einfach zu praxistauglich, als dass man damit als Anbieter/Dienstleister Geld verdienen könnte?

Virtualisierung: I/O Last senken mit KVM/libvirt

Geschrieben von everflux am Dezember 11th, 2011

Das Thema Virtualisierung geht einher mit neuen Anforderungen an die Ressourcen des Host Systems. Da zwar die CPU Leistung kontinuierlich zunimmt (Anzahl Kerne, Leistung/Stromverbrauch) und auch RAM Speicher immer günstiger wird, jedoch die Leistung der Festplatten nicht zunimmt, ergeben sich neue Probleme: Selbst mit schnell drehenden Platten und RAID Verbund wirkt sich die erhöhte Last durch mehrere virtualisierte Maschinen auf einem „Blech“ deutlich aus, da die Leistung – gemessen an der Anzahl der I/O Operationen pro Zeiteinheit – nicht mit gewachsen ist. Durch mehrere virtualisierte Systeme verändert sich auch das Zugriffsprofil: Selbst lineares Lesen jedes einzelnen Systems für sich sieht für die Festplatten eher wie ein Zufallsmuster aus, da mehrere Systeme parallel arbeiten. Ein Weg zur Erhöhung der I/O Operationen pro Sekunde ist starkes Caching oder Einsatz von SSD Festplatten (die wieder eigene Probleme haben).

Für den Einsatz unter Linux hat sich KVM als Standard für Virtualisierung durchgesetzt, ergänzt um Abstraktionsschichten wie libvirt. Vor allem bei den derzeit angebotenen dedicated Servern lohnt sich die Nutzung als Virtualisierungshost, da dies die Management-Möglichkeiten deutlich verbessert werden und die Flexibilität erhöht wird. Bei dieser Konstellation wird in der Regel die lokale Platte/Platten als Storage verwendet, mit den oben angeführten Einschränkungen. Was noch dazu kommt: Virtualisiert man die Festplatten „direkt“, stellt diese also als IDE oder SCSI Device zur Verfügung, kommt deutlicher Overhead dazu. Der lässt sich nicht vermeiden, wenn man Windows oder ein Betriebssystem virtualisiert, das keine Paravirtualisierung unterstützt.

Paravirtualisierung liegt dann vor, wenn das virtualisierte System etwas davon weiß, in welcher Umgebung es läuft, und entsprechend kooperativ ist. Mit Linux ist das kein Problem, unter anderem durch die Vorarbeiten die fuer die Xen Virtualisierung erfolgt ist. Daher sollte man nicht als „ide“ sondern „virtio“ als Schnittstelle für Gäste verwenden, die das unterstützen, um geringere Last und höhere Performance zu erzielen.

Weiterlesen »

Ubuntu Lucid LTS Server auf Oneiric Updaten

Geschrieben von everflux am Dezember 10th, 2011

Manchmal möchte man gerne ein Update von einer LTS Version auf eine nicht-LTS Version machen, z.B. um  neuere Pakete nutzen zu können. Der „übliche“ Weg dazu, den man in vielen Blogs und Foren findet, ist „sudo do-release-update -d“, welches auf die aktuellste Developer („d“) Version aktualisiert.
Das ist solange kein Problem, wie keine „echte“ Entwicklerversion bereitsteht, dann sind Entwicklerversion und letzte Release-Version nämlich identisch und man erhält das gewünschte Ergebnis. Möchte man aber derzeit beispielsweise von Ubuntu Lucid auf Oneiric umstellen, und wählt das development Update an, so wird in der Tat auf die Entwickler Version Precise Pangolin aktualisiert. Höchstwahrscheinlich auf einem Server nichts, was man nur für aktuellere Pakete tun möchte.

Die Alternative: In /etc/update-manager/release-upgrades aendert man die Zeile
Prompt=lts
auf
Prompt=normal
und startet anschließend ganz normal „sudo do-release-upgrade“. Der Upgrade Prozess von Lucid auf Oneiric verlaeuft dann ueber die Zwischenschritte „Update auf Maverick“ und „Update auf Natty“.


http://everflux.de/
Copyright © 2007, 2008 everflux. Alle Rechte vorbehalten. All rights reserved.