Delaying MySQL replication
June 6th, 2007 by Kay Röpke

Recently, when we were chasing a very elusive and intermittent bug in one project for XING, we finally realized that our problem was caused by a short replication lag.

Debugging this kind of thing is very hard because typically it doesn’t show its ugly head in development environments, since there hardly ever is a replication lag at all. One the other hand, debugging on a live system is not exactly fun either (not to mention that dangerous, open-heart surgery isn’t a good idea, anyway).

What to do? It was clear that we needed to delay MySQL replication somehow. Once upon a time I did exactly that by using the Quality of Service support in Linux but that was, uh, tedious.

So when thinking about this problem over the weekend, I decided the best place to put this kind of feature would be the MySQL server itself. I sat down about a week ago and wrote up a patch for both MySQL 4.1.22 and 5.0.41 to support configurable replication delay.
After speaking to Lenz Grimmer about contributing the patch to MySQL, he mentioned that this has been in their Worklog a long, long time, the first recorded request of this feature being from 2001!

I added a feature request to their bug tracker and re-implemented the feature to match the requirements of the aforementioned worklog entry. Specifically MySQL would like to see this setting as a parameter to the CHANGE MASTER statement to be able the set the delay to different values once multi-source replication is ready.

Currently, in 4.1.22 and 5.0.41, the replication delay can be changed by setting the global system variable slave_replication_delay like

mysql> set global slave_replication_delay = 30; # in secs

For the latest mysql-5.1-bitkeeper tree you can use

mysql> stop slave;
mysql> change master to master_delay = 30; # in secs
mysql> start slave;

This setting would cause the SQL replication thread to delay any event in the relay log by 30 seconds relative to the timestamp that event has been generated by the master. It will also take into account the current replication lag imposed by other circumstances, like network congestion and blocking queries on the slave, so the lag will not build up.
For example, if the slave is already lagging behind by 5 seconds, the actual delay introduced would be 25 seconds. If the slave is lagging more than 30 seconds, it would not delay the event at all. So effectively that setting is the lower limit of the replication lag.

You can imagine how helpful this is to debug replication lag related bugs. No more guessing around, no more uneasy sleep…just add a simple 30 seconds of delay to the replication and you instantly know whether you read stale data when a slave is lagging behind or not.

Posted in Verschiedenes, epublica, openBC / XING | 7 Comments »

epublica speaks at LinuxTag 2007
June 4th, 2007 by Erick Dennis

LinuxTag 2007
Last Wednesday Michael Otto and Erick Dennis embarked on a journey to Berlin to give a talk on scalability and optimization at the LinuxTag 2007 conference. The two held their presentation entitled “Solving Growing Pains for openBC/XING” which they originally prepared for the MySQL Users Conference in Santa Clara, California. The epublicans were met by an enthusiastic audience on the well-visited opening day of the 4-day conference. ;-)

Posted in epublica, openBC / XING | No Comments »

MySQL UC 2007, Day 2
April 25th, 2007 by Michael Otto

The obligatory part of the conference is now over for us, the fun part has just begun. We held our MySQL scaling presentation today at the Santa Clara Convention Center. There’s still a lot of interesting stuff coming up – we’ll start with some “Birds of a feather” sessions tonight.

10.jpg

Posted in epublica, openBC / XING | No Comments »

MySQL Pooling
April 23rd, 2007 by Norbert Schuler

Sometimes it’s really hard to be a computer scientist, especially when it comes to working conditions. See MySQL pooling diagram below. Is this man

a. working hard

b. hardly working

Send your answers with a self addressed envelope to /dev/null.

at the pool

Posted in epublica, openBC / XING | No Comments »

What’s missing in this picture?
April 21st, 2007 by Michael Otto

We just arrived in Santa Clara, for our MYSQL User Conference Presentation. “We” refers to us all, just without Erick’s luggage, which got lost somewhere between Hamburg and California. Great start.

Erick, here without his bags.

Posted in epublica, openBC / XING | 3 Comments »

Preparing for MySQLConf
April 4th, 2007 by Hanno Zulla

We are working on our presentation for MySQLConf. It will be called “Solving Growing Pains for OpenBC/Xing.com“. Erick Dennis and Michael Otto gave a sneak peek at the Hamburg MySQL Meetup (here are some photos) and today we are finetuning it based on that feedback.

If you are interested to hear about the database architecture of Xing and some of our performance tricks, be sure to visit us on April 24th in Santa Clara!

Posted in epublica, openBC / XING | No Comments »

Cubicles?
March 29th, 2007 by Hanno Zulla

Wir arbeiten in einem Großraumbüro und unsere Tische sind in Vierer- oder Dreiergruppen angeordnet.

Das ging eine ganze Weile ganz gut, aber so langsam nervt uns der allgemeine Lärmpegel: Telefonate, Gespräche zwischen Entwicklern.

Ein Test mit “Lärmschutzwänden” verlief enttäuschend: Jetzt sieht man seinen Kollegen nicht mehr, aber hört ihn nach wie vor klar und deutlich.

Der freundliche Vertriebsmann der teuren Stellwände erklärte uns dann, dass wir bei unserem Büro mit dieser Lösung keine großartige Lärmdämmung erwarten konnten. Großartig, genau das war, was wir ursprünglich gefordert hatten…

Also gut: Vielleicht doch das Büro aufteilen? Da wollen wir mal fragen, wie andere Firmen den Umstieg vom Großraumbüro zu kleineren Parzellen angegangen sind und wie zufrieden sie dann mit dem Ergebnis waren. Wir bitten um Erfahrungsberichte.

Posted in epublica | 5 Comments »

epublica sucht: Entwickler für Web-Applikationen
February 26th, 2007 by Hanno Zulla

Gesucht: Software-Entwickler/-in für Web-Applikationen. In Festanstellung.

Ich liebe es, wenn ein Skript funktioniert

Die epublica GmbH ist ein Software-Haus und technischer Dienstleister für web-basierte Applikationen und Online Community Projekte. Unsere Kunden sind kleine und mittelständische Unternehmen aus unterschiedlichsten Branchen.

» Mehr Informationen

Posted in epublica | 1 Comment »

Informatik ist sexy!
February 22nd, 2007 by Hanno Zulla

Die Süddeutsche Zeitung schreibt:

Die Unternehmen der Informationstechnologie und Telekommunikationstechnik stellen wieder ein. [..] Sie suchen vor allem Software-Entwickler, Berater und Projektmanager.

Wir auch. Und wir machen sexy Projekte! Schreibt jedenfalls die Süddeutsche Zeitung im gleichen Artikel:

“Doch Informatik hat heute viel weniger als früher mit Maschinen zu tun und dafür viel mehr mit Menschen.” Projekte wie [..] Xing (OpenBC) zeigten, dass man Sachen machen könne, die “sexy” sind [..]

Interesse an Web-Projekten? Kenntnisse mit MySQL? Am besten noch Erfahrung mit Perl? Wir freuen uns auf Ihre Bewerbung.

Posted in epublica, openBC / XING | No Comments »

Datenschutz und Copyright
February 9th, 2007 by Heiner Jürgensen

Hey, wir finden es natürlich klasse, wenn auch andere Firmen dem Datenschutz einen so hohen Stellenwert zusprechen wie wir! Sehr nett auch, dass wir auf uns völlig fremden Sites als Ansprechpartner für “Fragen, Anregungen oder Kommentare zum Thema Datenschutz” aufgeführt werden, das adelt schon in gewisser Weise. :-) Wenn jetzt auch noch die Beachtung des Copyrights ähnlich starke Verfechter finden würde…

Original Fälschung

Was hätte wohl Immanuel Kant dazu gesagt? ;)

Posted in wer-weiss-was | No Comments »

Sinnlose Impressumspflicht 2.0 (Update)
February 2nd, 2007 by Hanno Zulla

Unser Anwalt schreibt:

Der Gesetzgeber hat mit Wirkung zum 01.01.2007 Änderungen an den gesetzlichen Vorgaben zu Angaben auf Geschäftsbriefen vorgenommen. Waren die bekanntlich erforderlichen Angaben wie Firma, Geschäftsführer, Registergericht und HR-Nummer früher nur auf gedruckten Geschäftsbriefen erforderlich, gelten diese Regelungen nun auch für Emails. Zur Vermeidung etwaiger Abmahnungen und sogar möglicher Bußgelder empfehle ich Ihnen daher, in Ihrem Unternehmen die Email-Signaturen zu vereinheitlichen, so dass diese den gesetzlichen Vorgaben genügen.

Heise schreibt:

Dabei hat jeder betroffene Kaufmann die Vorgaben zu beachten, die abhängig von der Rechtsform seiner Firma für ihn gelten. Andernfalls droht etwa einer GmbH ein Zwangsgeld von bis zu 5000 Euro. Dazu kommt für alle Firmen die Gefahr einer Abmahnung wegen unlauteren Wettbewerbs.

Juhu. Noch ein vollkommen sinnloses und praxisfremdes Gesetz zur elektronischen Kommunikation, das vermutlich ebenso wie die ursprüngliche Webseiten-Impressumspflicht primär als Arbeitsbeschaffungsmaßnahme für Abmahnanwälte dienen wird.

Update: Es geht los.

Posted in Verschiedenes | 6 Comments »

Marktführer wer-weiss-was.de
January 30th, 2007 by Michael Otto

ONEtoONE schreibt in seiner Februar-Ausgabe über Frage-Antwort-Portale in der Web-2.0-Ära. “Pionier” und Marktführer ist wer-weiss-was, dessen Idee in diesen Tagen ziemlich genau 11 Jahre alt wird.

Vielleicht ist das die passende Gelegenheit, kurz zu erklären, wie es zu den Grundprinzipien “Gegenseitigkeit” und “Nutzer schreiben Inhalte” (User Generated Content) kam. Nun, die Gegenseitigkeit ist aus purer Not geboren. Um die kritische Masse zu erreichen, mit der die Plattform funktioniert, dachten wir uns, dass jeder, der Fragen stellen will, gleichzeitig auch welche beantworten soll. So funktionierte das Prinzip der Website praktisch von Anfang an. Dazu muss man sich vor Augen führen, dass 1996 einfach noch sehr sehr viel weniger Leute das Internet nutzten als heute. Gefühlt etwa Faktor 1000. Mit der Zeit fanden wir das Prinzip Gegenseitigkeit dann aber so gut, dass wir es beibehielten und zur Tugend erklärten.

Mitte der 90er fingen die großen Medienunternehmen an, ihre in der haptischen Welt bewährten Konzepte ins WWW zu portieren, zum Beispiel als Online-Ausgaben von Zeitschriften oder Fernsehshows. Wir hatten aber (als Studenten) keine Mittel, Redakteure oder Fachleute zu bezahlen, die für uns Inhalte produzieren. Wir hatten einen Server und eine Software, der Rest musste von selbst laufen. Heute nennt man das User Generated Content, Community oder AAL (andere arbeiten lassen), das stand für uns aber überhaupt nicht im Vordergrund. Erst nach und nach ging uns auf, welche Dynamik und welches Eigenleben so ein Stück (soziale) Software entwickeln kann. Damit sie funktioniert, muss man allerdings eine Menge Arbeit in Hege und Pflege der Gemeinschaft und den Benutzersupport stecken. Hätten wir das geahnt, hätten wir wer-weiss-was vielleicht nie entwickelt.

Posted in wer-weiss-was | 1 Comment »

Danke, Stefan Münz!
January 30th, 2007 by Hanno Zulla

Stefan Münz verabschiedet sich von SelfHTML:

“SELFHTML wird dadurch zwar immer professioneller und exakter, zum Beispiel auf der Ebene der Terminologie, verliert aber genau dadurch auch immer mehr den Bezug zu den abertausenden von Berufsschuelern, Muettern in Weiterbildung und internet-interessierten Senioren da draussen, denen SELFHTML allenthalben als Standardwerk empfohlen wird.

Ausserdem entdeckt dieses eigentlich typische Stammpublikum von SELFHTML, die “Normalos”, so ganz allmaehlich, dass man im Web auch ohne HTML und all das publizieren kann. Ganz schicke Sachen gibt es da, allein schon, was man mit einem kostenlosen Google-Account alles veroeffentlichen kann, oeffentliche Kalender, Notebooks, Spreadsheets, Web-Alben, Videos, Blogs, eigene Diskussionsgruppen … die Leute lernen allmaehlich, dass aktives Webworking nicht mehr zwangslaeufig bedeutet, sich erst mal lange und demuetig irgendwelchen voellig unbekannten Programmiersprachen und Netzprotokollen zu widmen. Webworker werden allmaehlich ganz normale Anwender, die ihre Aktivitaeten vornehmlich in immer maechtiger werdenden, web-basierten Anwendungen verrichten, genau so, wie die Kommandozeilen-Gurus der DOS-Aera irgendwann den von ihnen zunaechst belaechelten und beschimpften Anwendern wichen, die mit PCs erst zurecht kamen, als sie mit grafischen Benutzeroberflaechen arbeiten konnten.”

Irgendwer muss diese “schicken Sachen” natürlich programmieren. Nicht nur Mütter in Weiterbildung, auch Leute wie wir haben während des Informatik-Studiums mit Hilfe von SelfHTML das Handwerkszeug gelernt. Und es dient nach wie vor bei epublica als wertvolles Nachschlagewerk.

Herzlichen Dank, Stefan Münz!

Posted in Verschiedenes | 1 Comment »

epublica to speak at MySQL Users Conference 2007
January 17th, 2007 by Erick Dennis

Browsing through my email last night, I was incredibly excited to find a message from no other than Jay Pipes himself, confirming that our proposal for the MySQL Users Conference 2007 has been accepted. We will be holding a 45 minute presentation entitled “Solving Growing Pains for OpenBC/Xing.com” that will shed some light on how we have dealt with scalability and optimization issues on XING. It goes without saying that we are overly enthusiastic about the opportunity to mingle with others from the community and harvest as much new knowledge as we can. The added bonus of the conference being held in sunny Santa Clara, California is the icing on the cake!

Posted in epublica, openBC / XING | 1 Comment »

XING Suche auch für IE 7.0
January 6th, 2007 by Norbert Schuler

Inoffiziell funktioniert das Installieren des XING-Suchfeldes mittlerweile auch für den Internet Explorer 7. Und auch die Installation für Firefox funktioniert mittlerweile von jeder beliebigen XING Seite aus. Einen Download einer INI-Datei für Opera 8.x findet man auf XING hier, während man im Opera 9 ja sehr leicht XING als Suche selbst installieren kann.

Internet Explorer 7: ie7_xing_search.png Firefox 2.0: ff_xing_search.png

Posted in openBC / XING | 1 Comment »