Flattr(n) wir mal los!

Mit Flattr gibt es endlich mal einen Micropaymentservice, der auch funktionieren könnte. Das Prinzip dahinter finde ich eigentlich ziemlich cool, aus dem Grund habe ich mich gleich mal registriert und werde auch monatlich ein paar Euro locker machen. Mal sehen was es bringt.

Das Beste an Flattr ist übrigens dass man darüber sprechen darf oder sogar soll. Google Adsense ist dazu das krasse Gegenteil. Darüber darf man ja fast nicht sprechen und wehe man würde jemand auffordern bei seiner Seite die Links anzuklicken …

Varnish – neuer Lack

Nachdem ich varnish immer noch nicht versucht habe nehme ich mir das jetzt mal schriftlich vor. Ich glaub fest daran, dass so HTTP accelerator ordentlich was nutzt. Und eben der darauf spezialisierte Varnish Proxy erscheint mir viel besser zu sein als der gute alte Squid.

Das Problem, was ich mit Varnish noch habe ist, dass ich mir überlege wo ich das Teil im Netz aufhängen werden. Wahrscheinlich erst einmal nur auf meiner privaten Kiste vor dem Apache. Aber was tun bei komplexen Setups? Ich hab noch zuviele Frage über die ich mir im klaren werden muss:

  • Vor oder hinter einem HAProxy? Dahinter wäre es redundant; davor aber performant.
  • Was passiert falls ich persistente Sessions benötige mit diesen auf dem Weg zum App-Server?

Jemand schon Erfahrung damit?

Fangen wir erst einmal langsam im Heimgebrauch damit an …

HAProxy Notizen

Nachdem ich die Dinge immer er-google-n muss schreibe ich mir sie mal hier direkt auf:

  • Backened abhängig vom Hostnamen auswählen:
            acl aclHAPROXY hdr_dom(host) -i haproxy.it4sport.de
            use_backend HAPROXY if aclHAPROXY
    
  • Backend abhängig vom Verzeichnis auswählen:
            acl aclDEV  url_beg /devel/
            use_backend DEV if aclDEV
    

    Im entsprechenden Backend muss man sich dann um den Pfad kümmern und den Request anpassen:

            reqrep ^([^\ ]*)\ /devel/(.*)     \1\ /\2
    
  • Zusätzlichen Header einbauen:
            reqadd X-HAPROXY-BACKEND:\ devel
    

    Damit weiß die Anwendung etwa über welches Backend die Seite aufgerufen wurde.

SQL: Truncate vs. Delete

Args, eben bin ich fast ausgeflippt, weil ein Truncate auf eine Tabelle immer an Foreignkey Constraints gescheidert ist. Für die Daten existierten aber nicht solche Bedingungen, die ein nicht Löschen rechtfertigten. Erst nach einer Ewigkeit habe ich mal ein „delete from …“ versucht und zu meinem Erstaunen festgestellt, dass er funktioniert hat.

Oha, Warum denn das?

Des Rätsels Lösung wissen wahrscheinlich alle außer mir. Aber damit ich mir es auch merke schreibe ich mir auf, dass bei einem Truncate alleine die theoretische Möglichkeit von Beziehungen auf der ganzen Tabelle prüft und nicht wie bei einem Delete pro Datensatz das tatsächliche Vorhandensein einer dedizierten Beziehung.

Merke: Truncate bei Tabellen mit Constraints gehen schief, wenn die Constraints nicht vorher deaktiviert sind.

Calibre

An alle die planen eines der folgenden Geräte zu kaufen oder es bereits besitzen: SONY PRS 300/500/505/600/700/900, Barnes & Noble Nook, Cybook Gen 3/Opus, Amazon Kindle 1/2/DX, Entourage Edge, Longshine ShineBook, Ectaco Jetbook, BeBook/BeBook Mini, Irex Illiad/DR1000, Foxit eSlick, PocketBook 360, Italica, eClicto, Iriver Story, Airis dBook, Hanvon N515, Binatone Readme, Teclast K3, SpringDesign Alex, diverse Android phones und das iPhone.

Calibre ist nicht nur ein super Ersatz für die teilweise fehlerhafte Orginalsoftware der Hersteller, sondern auch ein prima Weg tagesaktuell Webseiten von Tageszeitungen in eBook Form zu pressen und mitzunehmen. Ausserdem läuft es nicht nur unter Windows 😀

Ubuntu 10.4 – erste Tage

Von Sonntag auf Montag habe ich mein Notebook sich auf Ubuntu 10.4 aktualisieren lassen. Zeit also die ersten Tage zusammen zu fassen. Hier die ersten Auffälligkeiten im Vergleich zu vorher:

  1. UMTS
    Dieses mal klappt es einwandfrei. Allerdings wird wieder nur eine Karte von mir erkannt. Obwohl Ubuntu die nozomi Version erkennt und der richtige Treiber lädt, lässt sie sich nicht über den Network-Manager nutzen.
  2. Virtualisierung
    1. VMWare Workstation
      Das war es dann. VMWare setzt auf usbfs und Ubuntu 10.4 hat es nicht mehr dabei. Das bedeutet keine USB Geräte in der VM ansprechbar. Selbst ein Update auf VMWare Workstation 7 hat nicht geholfen. Nachdem zudem 100 Euro für das Update fällig wären habe ich mich gegen VMWare entschieden.
    2. VirtualBox
      VirtualBox heißt mein neuer Virtualisierer. Es gibt nur die Version für Ubuntu 9.10, die lässt sich aber installieren. Allerdings funktionieren dort auch die USB-Geräte nicht reibungslos. Nachdem ich jedoch in einem xterm sudo hald --daemon=no vor der VirtualBox Software starte geht alles. Ausserdem ist VirtualBox gefühlt schneller.

Weitere Updates folgen