Tag Archives: MySQL

WordPress mit mehreren Datenbankservern betreiben.

word-press-big11Wie schon gestern hier zulesen soll die Installation von WordPress hier lernen mit mehreren Datenbankservern umzugehen. Das Thema MySQL-Proxy ist erst einmal auf Eis gelegt. Wird aber schon rein aus Interesse später mal wieder vorgekramt.Den WordPress Core Code für die Datenbankabfragen habe ich mir gestern schon einmal angeguckt und erst einmal ein paar gedanken dazu gemacht, wie man lesende SQL-Querys auf den bzw. die Slave Datenbankserver schickt und alles was Daten in der Datenbank verändert zum Master Datenbankserver schickt. Heute Nachmittag habe ich mich dann einmal, in einer Testinstallation, an die Arbeit gemacht.


Read more

WordPress und 2 bis n Datenbankserver

mysql_aspirin_holerRuhig ist es hier geworden, aber nur im Blog. Im Hinterraum und untenrum wurde in letzter Zeit wieder viel geschraubt. Wer hier schon länger mitgelesen hat, weiß dieses Blog wird nicht auf einem einsamen Server betrieben. Mindestens die Webserver wechseln sich ab, wenn man die Seiten hier aufruft. Zusätzlich die Datenbankserver die wenigstens als Master und Slave laufen. Noch ein paar Sachen und einer der Server kann ohne Probleme mal abrauchen. Trotzdem bleibt alles erreichbar. Heute lief der Fullsync für die Mailserver, ab jetzt wird der Part auch noch gesynced.


Read more

WordPress Tuning Teil 3 memcached

Im 2. Teil wurde ja schon Memcached angesprochen. Da war noch ein kleiner Bug in dem memcache Script für WordPress. Das hat sich jetzt erledigt und diese WordPress installation läuft seit ein paar Stunden mit dem memcache zusammen.

Die aktuell eingesetzte Version, aus dem Branche der Version 1.0, ist im Repository zufinden. Die beiden Dateien gehören in den Order “wp-content/” anschliessend muss man noch die Memcache Server in die wp-config.php mit eintragen:


1 Memcached

$memcached_servers = array('172.1.1.1:11211','172.1.1.2:11211');


2 Memcached

$memcached_servers = array('172.1.1.1:11211');

usw. je nach dem wieviele memcached eingesetzt werden. Dann nur noch den Memcached starten.

Die ersten Stunden ist WordPress hier komplett ohne WP-Cache und WP-Super-Cache gelaufen und es war von der Geschwindigkeit als würden beiden Caches aktiv sein. Es macht sich also direkt bemerkbar wenn memcache aktiviert ist. WP-Cache und WP-Super-Cache sind beide wieder aktiv weil die Seiten dann schon statisch vorliegen und nicht erst noch von PHP zusammen gesetzt werden müssen.

Der Memcached hat erst 64 MB Ram bekommen aktuell steht er auf 128 MB und er hat noch reichlich Luft. Das sollte ihm auch vollkommen ausreichen, daher wird nach den ersten Tagen die Statistik ausgewertet und sehr wahrscheinlich etwas runter gedrosselt. Den Speicher kann man an anderer Stelle ja auch noch verbraten.

Dann wird der Memcache auch noch mal kurz im WordPress deaktiviert um einen Test zu machen, wie viel Ladezeit es bringt mit und ohne Memcache.


RSS-Feed jetzt über Feedburner, MySQL auf Master zurück geswitched

Den RSS-Feed von Pretzlaff.info erhält man jetzt über FeedBurner. Wer möchte kann den Feed im Reader aktualisieren.

Die MySQL-Datenbank liegt jetzt wieder auf dem Master und daher ist das Blog jetzt noch ein wenig schneller, da der Server mit der Master MySQL Datenbank etwas schneller ist.

WordPress Tuning Teil 2

Nachdem die letzten Tage schon etwas an der Geschwindigkeit gedreht wurde waren gestern noch ein paar Sachen die noch mehr Speed bringen.War ja auch die letzten Tage sehr ruhig, viel neues gab es nicht, also wieso die Zeit nicht für solche Sachen nutzen.

Am Apache wurde noch ein wenig an den Verbindungen pro Clients, Clients pro Child usw. optimiert. Ausserdem hat PHP noch etwas mehr fürs Chaching bekommen. Leider ist das Einbinden von memcached bei WordPress noch nicht vorgesehen. Es gibt da zwar schon etwas, aber da sind noch 1-2 Bugs drin daher wird es nicht aktiviert. Die Stellen die noch etwas Buggy sind guck ich mir noch mal in Ruhe an.

MySQL wurde bei der Gelegenheit auch noch mal etwas getuned.

  • query_cache_size auf 32 MB

Dann noch mal:

  • key_buffer=64M;
  • table_cache=256;
  • sort_buffer=4M;
  • read_buffer_size=1M

Genauer angeguckt und noch mehr Speicher vergeben.

Sidebar Widget sind jetzt auch noch ein paar rausgeflogen. Kalender ist raus, der muss ja jedesmal Anfragen an die DB schicken und bearbeiten damit er die Tage verlinkt, an die gepostet wurde.

Kategorieren mussen auch ausgelesen und generiert werden, also auch erst mal raus wie der Tag-Cloud. Die drei kommen aber wieder in die Sidebar, aber erst wenn die Module fertig sind. Es sollen für alle drei eigene Module her, die Statisches Material erstellen die dann an die Stellen eingefügt werden. Entweder kann man die Sachen dann nach X Minuten bei einem Aufruf der Seite erstellen lassen oder für die jenigen die Crontabs anlegen können, kann es dann regelmässig von Cron erledigt werden. Alternativ dann aus dem Adminpanel heraus, wenn man etwas neues gepostet hat, damit dann alle Sachen einmal neu generiert werden.

Wo wir gerade dabei sind, das ganze soll dann auch mit den letzten Kommentaren passieren. Was vergessen? Glaube ja, komme aber gerade nicht drauf was gestern noch gemacht wurde. Das wird gepostet wenn es mir wieder einfällt.


WordPress optimiert, Apache und MySQL optimiert.

Die Seite und der Adminbereich sind in letzter Zeit etwas träge gewesen. Also ma wieder das übliche optimiert.

WordPress:

  • unötige PlugIns gelöscht,
  • Datenbank optimiert,
  • Resionierung deaktiviert,
  • Revisionen gelöscht.

Apache:

  • Content komprinieren im Apache
    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/javascript application/x-javascript application/x-httpd-php application/rss+xml application/atom_xml text/javascrip
  • Subdomains für scripts.* und image.* erstellt über die Bilder und CSS ausgeliefert werden, so das die Browser mehr Verbindungen zum Server aufmachen können.
  • Create expires headers für Mediafiles, Styles, Bilder usw.

Mysql:

  • Caching noch weiter optimiert.
  • MySQL Proxy vorbereitet.

Das reicht jetzt erst einmal wieder etwas und die Seite ist jetzt auch noch beim Aufrufen durch Besucher schneller.

Links mit Screenshots

Dev0 (Thomas) benutzt in seinem Chat für die Goodies Websnapr um Screenshots zuerstellen. Seit gerade gibt es das auch hier für Links auf andere Seiten. So werden für Heise.de, Instant-thinking und was sonst noch verlinkt wird mit einem Screenshot als Vorschau angezeigt.
websnapr lets you capture screenshots of (almost) any web page. Allow your visitors to instantly visualize any web page before clicking. Increase site traffic, click-through rate and site stickiness.

Das passende WordPress PlugIn gibt es bei andufo.com. Wie immer einfach in den Plugin Ordner kopieren und im Adminpanel aktivieren.

Als Erinnerung um zu testen.

greylisting.py

A greylisting implementation for the courier MTA

For a detailed description look into the source package.

http://source.schokokeks.org/greylisting/

Zitat aus dem Blog:

Nachdem ich jetzt doch von einigen Leuten weiß, die meinen greylisting-Filter bei sich einsetzen, kann ich das auch grade mal hier announcen… ;-)
Es gibt davon eine neue Version. Es gibt einen ziemlichen Bruch, es wird jetzt MySQL anstelle von SQLite als Backend benutzt. Das liegt daran, dass ich vor habe, eine selektive Whitelist (»Mails an diese Adresse bitte in den nächsten 10 Minuten nicht greylisten«) für unsere Kunden zu ermöglichen. Dazu muss es eine gemeinsame Datenbank für das webinterface und das greylisting geben, was hiermit geschehen ist.

Das hört sich sehr interessant an mit der Anbindung an die DB.

Piwik # open source web analytics

piwik is an open source (GPL license) web analytics software. It gives interesting reports on your website visitors, your popular pages, the search engines keywords they used, the language they speak… and so much more.

piwik aims to be an open source alternative to Google Analytics.

piwik is different from the competition because:

  1. the features are built inside plugins: you can add new features and remove the ones you don’t need. If you are a developer, you can easily build your own plugins!
  2. you own your data. Piwik being installed on your server, the data is stored in your own database and you can get all the statistics using open APIs (publishing the data in many formats: xml, json, php, csv)
  3. (NOW AVAILABLE!!!) the user interface is fully customizable, you can drag and drop the widgets you want to display, create the reports you want

Give it a try

  • you can try the online demo that shows you the latest piwik release. Please note that all User Interface part is still in progress so don’t expect something big on this. This is the most visible part though :-)

to install Piwik, download the latest release, upload it on your webserver (you need at least PHP 5.1 and a Mysql database), and open your browser: the installation process is automatic and takes less than 5 minutes

Das werde ich dann mal genauer angucken. Gefunden übrigends hier.

Get Adobe Flash playerPlugin by wpburn.com wordpress themes