This week I helped dealing with performance problems (part MySQL related and part related to LAMP in general) of system which does quite a bit of content delivery, serving file downloads and images – something a lot of web sites need to do these days. There were quite a bit of mistakes in design for [...]
Debugging sleeping connections with MySQL
Have you ever seen connection in the SHOW PROCESSLIST output which is in “Sleep” state for a long time and you have no idea why this would happen ? I see if frequently with web applications and it is often indication of trouble. Not only it means you may run out of MySQL connections quicker [...]
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 [...]
Are PHP persistent connections evil ?
As you probably know PHP “mysql” extension supported persistent connections but they were disabled in new “mysqli” extension, which is probably one of the reasons some people delay migration to this extension. The reason behind using persistent connections is of course reducing number of connects which are rather expensive, even though they are much faster [...]
Back from OpenSource Database Conference
I’m just back from OpenSource Database Conference and PHP International Conference which took place in Frankfurt. I’ve uploaded slides for two talks I’ve been giving which you might want to check out. In general Database portion of the conference was a bit boring. May be because it was not widely announced or may be for [...]
Should MySQL and Web Server share the same box ?
This is interesting question which I thought it would be good to write about. There are obviously benefits and drawbacks for each of methods. Smaller applications usually start with single server which has both MySQL and Web server on it. In this case it is not usually the question but once application growths larger and [...]
Life Beyond MySQL
When I was leaving MySQL I wrote I will be doing some Web projects on my own, besides doing MySQL Consulting. I think some people thought I am just using that as an excuse and really I will only do consulting. So I’m pretty happy to announce my first project. NNSEEK Is NewsGroup search engine, [...]
Cache Performance Comparison
Jay Pipes continues cache experiements and has compared performance of MySQL Query Cache and File Cache. Jay uses Apache Benchmark to compare full full stack, cached or not which is realistic but could draw missleading picture as contribution of different components may be different depending on your unique applications. For example for application containing a [...]
Stack trace for x86_64 boxes
We are going to release several patches which are not included in official MySQL releases. First one is automatically stack trace for x86_64 systems. Currently MySQL resolves stack in crash only for x86 boxes. You can download patch for 5.0.22 source tree here. How to use: place stack64.diff into main source dir; execute patch -p1 [...]
Speedup your LAMP stack with LigHTTPD
Apache Web server could frequently be bottleneck for your LAMP stack, or you might be wasting resources on your web servers. The problem with Apache server comes from “client per process” architecture which you have to stick to at least for dynamic content served by PHP or ModPerl. With “client per process” you end up [...]

