150% Geschwindigkeitsverbesserung durch manuelles Caching
Sie sind hier: Startseite
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
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
How To Hijack Facebook Like – oder: wie bringe ich Deinen Like-Button unter (meine) Kontrolle
Sie sind hier: Startseite
===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.
Lesetipps zu Multitouch Events auf dem iPad
Sie sind hier: Startseite
Wer sich auch gerne in das Thema Multitouch auf Apple-Geräten einlesen möchte, dem seien folgende Links empfohlen:
- Apple Safari Web Content Guide zu Handling Events – ratsam für Multitouch
- Two-Finger Events
- Handling Multi-Touch Events über ontouchstart, ontouchmove, ontouchend, ontouchcancel
- touching and gesturing on the iPhone
- Graph Scaling bei touchmove
- Codebeispiel: Slider.js allerdigs mit nur einem Touchevent
In den obigen 4 Artikel (bzw. 6 Links) wird ausführlich, mit Codebeispielen, erklärt, wie man für das iPhone von Apple oder dem neuen Apple iPad Events erzeugt um Aktionen mehrerer Finger, dem so genannten Multitouch, entwickelt.
Dabei handelt es sich nicht um die üblichen Dreh- und Zoombewegungen, denn das sind eigentich nur Gesten und in der Entwicklung nicht unbedingt als Multitouch anzusehen. Multi kann mehr als 2, 3 oder 10 Finger sein.
Conversion Rate Optimierung – Call To Action und die Kunst
Sie sind hier: Startseite
Um die Conversion Rate Deiner Website zu verbessern, solltest Du unbedingt den Call To Action auf die rechte Seitenhälfte schreiben.
Dies ist der erste Post zu dem Thema hier, deswegen eine genauere Erläuterung
Dieser Test wurde genutzt um auszuprobieren, wohin die Aufforderung an der User soll eine bestimme Aktion zu machen. Sei es sich in den Newsletter einzutragen, Software herunterzuladen, in den Einkaufswagen zu klicken und vieles mehr.
Man kann sich streiten ob es wissenschaftlich ist, empirisch bewiesen ist es auf jeden Fall
Da dies der erste Post in der Kategorie Conversion Rate Optimization ist, gibt es noch einen Link auf The Art Of Conversion in 200 Wörtern:
PERSUADE BUT DON’T COERCE. BELIEVE YOUR OWN MESSAGE. DON’T MAKE YOUR CTA BIG JUST TO OVERCOMPENSATE. SHOW CONTEXT. BE RELEVANT. SUCCINCT. THROW AWAY COPY. THROW AWAY MORE COPY. USE DIFFERENTIATION AS A FILTER. BE OK WITH PEOPLE LEAVING. BE HUMBLE RE: YOUR BENEFITS. SURPRISE YOURSELF TO SURPRISE THE CUSTOMER. AUTHENTICITY RULES. ALWAYS. IF THE ACTION IS COOL YOU DON’T NEED TO CALL IT OUT. DRINK RED WINE. SEEK PRESSURE POINTS. OBSERVE. MAKE ORDINARY UNORDINARY (there’s no extra). GO BIG OR GO SMALL. IT DOESN’T MATTER. USE CONTRAST. USE DIRECTIONAL CUES. LOOK HERE vs CLICK HERE. …weiterlesen
Mind Maps für Blogbeiträge
Sie sind hier: Startseite
Nicht nur das Bild lohnt sich, auch der Beitrag von eisy lohnt es sich komplett zu lesen.
Die Methodik kann man nämlich nicht nur für die Entwicklung eines Blogposts nehmen, sondern auch sehr gut zum Programmieren.
Update auf WordPress 3.0
Sie sind hier: Startseite
Soeben habe ich eine menge Blogs auf das neue WordPress 3.0 mit dem Releasenamen “Thelonious” in der de_DE-Version portiert.
Bei den meisten Blogs hat das Upgrade problemlos funktioniert, nur bei einem leider nicht.
Der Blog zeigt an sich nur statische Seiten an, weswegen ich mein Template so umgebogen habe, dass es keine weiteren Funktionen gibt und lediglich eine Theme-Datei geladen werden muss.
Um möglichst viele Rechenoperationen zu sparen hatte ich im Design für die Anzeige des Contents lediglich geschrieben:
Das führte dazu, dass nach dem Update der gesamte Content nicht angezeigt wurde.
Das Problem lässt sich einfach lösen, wenn man den Inhalt mit folgendem Code anzeigt:
Rechnet zwar ein paar Millisekunden länger aber das sollte keine Probleme machen.
Daher noch ein paar Empfehlungen für eine schnelle Auslieferung:
Hat jemand noch mehr Tips dazu?
Beste Grüße!
Peter
Safari Reader im neuen Safari 5
Sie sind hier: Startseite
Im neuen Safari 5 von Apple gibt es ein besonders wichtiges Feature, den Safari Reader.
Dieser ermöglicht es auf Newsseiten oder Blogartikel nur den Inhalt anzuzeigen, die Sidebars, Header, Werbung und das andere Drumherum auszublenden.
Im Screenshot ist das beispielhaft für heise online zu sehen:
Weitere Informationen zum neuen Apple Safari 5 gibt es for news articles und im fscklog.
Wenn ihr das Feature auf eurer eigenen Seite anbieten und einbinden wollt, dann braucht ihr lediglich die HTML 5 Tags <article> sowie </article> um den anzuzeigenden Content schreiben.
Dabei scheint es so, als ob nur geschlossene Textblöcke darin zugelassen sind und nicht jeder <article> verwendet wird um das Reader Symbol in der Adresszeile anzuzeigen.
Caffeine ist live – Google on the run!
Sie sind hier: Startseite
Google hat es getan: Caffeine ist live.
Eine detaillierte Erläuterung dazu schreibt Vanessa Fox persönlich beim Search Engine Land
Den besten deutschen Artikel gibt es dazu bei Sistrix, der dazu schon einen Vortrag gehalten hatte.
Aber natürlich darf man die unterschiedlichen Rankings zwischen Google und Bing nicht vergessen, die Rand herausgearbeitet hat.
Flattr – die andere Wertschätzung für einen Blog
Sie sind hier: Startseite
Den letzten Post über Flattr habe ich eben bei Jochen Mai in der Karrierebibel gelesen:
Flattr – Haste mal nen Euro?
Und genau deswegen habe ich mir das mal näher angeschaut.
Enno hatte auch schon darüber berichtet, genauso wie netzwertig, netzpolitik und die TAZ.
Sucht man tiefer, findet man so einiges.
Das Video zeigt das Prinzip:
Ich finde die Idee sehr gut, hab aber Bedenken, dass sich das System zu leicht aushebeln und manipulieren lässt.
Auf der anderen Seite ist es ein guter Start um eine Art Bezahlsystem für Blognachrichten einzuführen, welches schon lange hat auf sich warten lassen.
Es muss ja nicht immer alles durch Werbung finanziert werden, im Gegenteil!

