webconsul

the best webconsul(ting)

150% Geschwindigkeitsverbesserung durch manuelles Caching

Sie sind hier: Startseite » Archiv für Juli 2010

Wie ihr über das Wochenende sicher bemerkt habt, hatte dieser Server am Wochenende mehrmals Schluckauf, was dem Speicherengpässen zuzurechnen ist.

Sowohl der Arbeitsspeicher als auch die Swap-Partition liefen regelmäßig voll, da die Requests nicht mehr bearbeitet werden konnten.

Dies ist nun über einen einfachen aber sehr wirkungsvollen Hack gelöst.
Alle 45 Minuten wird nun der jeweilige Blogindex manuell gecached und somit als statische Variante ausgeliefert.
Das funktioniert einfach in der Verbindung mit cron (*/45 * * * * /home/pw/bin/cron.sh 2>&1 /dev/null) und:

/usr/bin/wget -N -q -O /.../www/domain1.org/index.html http://www.domain1.org/ondex.php
/usr/bin/wget -N -q -O /.../www/domain2.de/index.html http://www.domain2.de/ondex.php

Das funktioniert einfach und gut. Vorher muss nur die alte index.php von WordPress in ondex.php umbenannt werden (oder ihr ändert einfach die Auslieferungsreihenfolge von index.php auf zuerst index.html) und gegebenenfalls die Permalinks abgeändert werden, in diesem Fall auf:
/ondex.php/%category%/%year%/%monthnum%/%postname%/

Der Vorteil gegenüber herkömmlichen Caching-Plugins wie WP-Cache, WP Super Cache und Co ist schlichtweg, dass alle PHP-Interpretationen und MySQL-Aufrufe eliminiert werden und so zumindest auf der jeweiligen Startseite keine unnötige Speicherbelastung vorkommt.
Die jeweiligen Unterseiten werden, zumindest bei mir, dann über WP-Cache bedient, denn dort sind die Speicheraufrufe weniger interessant, da der meiste Traffic einfach auf der Startseite ankommt.

Der 45 Minutenintervall wird verwendet, da meine Blogs meist zu diesen Zeiten geupdatet werden.

Damit könnt ihr loslegen und euch einiges an Speicher sparen.

Eigenes Dateisystem in nur 50 Zeilen Code

Sie sind hier: Startseite » Archiv für Juli 2010

Geeks und nerds, schaut euch diesen Artikel an:
Building Filesystems the Way You Build Web Apps

In selbigem wird beschrieben, wie man ein Dateisystem in nur 50 Zeilen Python-Code schreiben kann.

Das ist zwar in erster Linie nur Spielerei kann aber meiner Meinung nach zum automatisierten Erzeugen von Content auf diversen Plattformen dienen :D

How To Hijack Facebook Like – oder: wie bringe ich Deinen Like-Button unter (meine) Kontrolle

Sie sind hier: Startseite » Archiv für Juli 2010

===DISCLAIMER===
Dieser Beitrag ist definitiv in die Kategorie Blackhat und damit in Deutschland als nicht nutzbar einzustufen.
Bitte haltet euch daran und respektiert, dass der Release des Codes nur als Proof of Concept dient und so keinesfalls genutzt werden darf und soll.
Wer dies macht, macht es auf eigene Gefahr und macht sich unter Umständen strafbar.
===/DISCLAIMER===

Genug der mahnenden Worte.
Heute geht es in einem einfachen aber effektiven Beispiel darum, wie ich Kontrolle über den Like-Button auf Facebook bekomme.
Damit könntet ihr eure Social Media Optimierung auf eure Links einfach durchführen, denn jeder Websitebesucher mag euch automatisch und teilt dies dann auch freudig allen seinen Freunden mit. Ob er mag oder nicht.

Als was man diese Methode genau bezeichnet weiß ich nicht, ist an dieser Stelle auch egal, denn es soll ja sowieso nicht gemacht werden. Man könnte es als Clickjacking bezeichnen.

Und zwar kommt der Nutzer auf eine Seite und es wird ein kleines Skript geladen, welches sich an seinen Mauszeiger hängt und bei einem Klickevent eben auf den Button drückt.
Klingt simpel, ist es auch:
Facebook Like Button Hijack
Das Skript gibt es als Archiv zum Download hier: fb-hijack-direct

Das funktioniert ganz einfach, da in der JavaScript-Datei eine HTML-Division erzeugt wird, mit folgendem Inhalt:
<iframe id="ifra" src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.google.de/&layout=standard&show-faces=true&width=650&action=like&colorscheme=light" scrolling=no frameborder=0 width="30px" height="25px" style="opacity:.0;filter: alpha(opacity=0); -moz-opacity: 0.0;"></iframe>
Damit wäre die zu mögende Adresse http://www.google.de/.
Zu bermerken ist hierbei, dass der CSS-Style das ganze unsichtbar macht.

Wenn Du das Skript auf genau der Seite nutzt, dessen URL gehypt werden soll, dann funktioniert es. Denn der iframe sendet an Facebook den richtigen Referer, sodass auch so mancher Sicherheitscheck umgangen werden kann.

Der Hook document.onmousemove=followmouse erledigt dann den Rest, denn die Funktion followmouse nimmt jeweils die aktuelle Position des Mauszeigers, korrigiert dann die Position des obigen divs mit dem enthaltenen iframe, sodass sich der Zeiger immer über der jeweiligen Klickposition, dem Like-Button, befindet.

In Anlehnung an meinen Post damals zur effektiven Steigerung der Conversion Rate mittels Browserhistory kann man dieses Beispiel natürlich auch noch aufwerten und vorher überprüfen, ob der User überhaupt schonmal auf Facebook war und sich dort gegebenfalls schon eingeloggt hat.
Das Beispiel dazu gibt es in diesem Archiv als Download:
fb-hijack-visited

UPDATE: Genutzt wird das aktuell über diverse Tattoo oder ähnliche Seiten!

Also lasst euch nochmals sagen, dass ihr das auf keinen Fall nutzen sollt.
Und wenn ihr das doch macht, dann seid ihr böse Buben!
Diesen Jungs dürfte das gefallen.