It is easy for MySQL replication to become bottleneck when Master server is not seriously loaded and the more cores and hard drives the get the larger the difference becomes, as long as replication remains single thread process. At the same time it is a lot easier to optimize your system when your replication runs [...]
Finding your MySQL High-Availability solution – The questions
After having reviewed the definition my the previous post (The definitions), the next step is to respond to some questions. Do you need MySQL High-Availability? That question is quite obvious but some times, it is skipped. It can also be formulated “What is the downtime cost of the service?”. In the cost, you need to [...]
Just do the math!
One of the most typical reasons for performance and scalability problems I encounter is simply failing to do the math. And these are typically bad one because it often leads to implementing architectures which are not up for job they are intended to solve. Let me start with example to make it clear. Lets say [...]
KISS KISS KISS
When I visit customers quite often they tell me about number of creative techniques they heard on the conferences, read on the blogs, forums and Internet articles and they ask me if they should use them. My advice is frequently – do not. It is fun to be creative but creative solutions also means unproven [...]
High-Performance Click Analysis with MySQL
We have a lot of customers who do click analysis, site analytics, search engine marketing, online advertising, user behavior analysis, and many similar types of work. The first thing these have in common is that they’re generally some kind of loggable event. The next characteristic of a lot of these systems (real or planned) is [...]
Recovery beyond data restore
Quite frequently I see customers looking at recovery as on ability to restore data from backup which can be far from being enough to restore the whole system to operating state, especially for complex systems. Instead of looking just at data restore process you better look at the whole process which is required to bring [...]
Percona turns two today !
July 31st 2006 was my last day working for MySQL and August 1st I started what later was incorporated Percona with Vadim joining me September 1st as co-founder. Two years is a significant anniversary for any startup – surviving (and being profitable) for 2 years can be seen as validation of our business model and [...]
Progress with ClickAider project
About three months ago I announced ClickAider to become available to general public. And I think it is about the time to write about the progress we have with this project for those who interested. The project generates decent interest and we have about 3000 sites Registered over this time, which I consider decent number [...]
Managing Slave Lag with MySQL Replication
The question I often get is how far MySQL may fall behind and how to keep replication from lagging. The lag you will see will vary a lot from application to the application and from load to load. Plus what is the most important within same application the lag will likely have spikes – most [...]
Why do you need many apache children ?
I already wrote kind of about same topic a while ago and now interesting real life case makes me to write again Most Web applications we’re working with have single tier web architecture, meaning there is just single set of apache servers server requests and nothing else – no dedicated server for static content, no [...]

