Hacker Newsnew | comments | show | ask | jobs | submit login

Question for photomatt if you're still reading this comment thread, and since it might be my only chance to get dialog with you.

Are you considering any changes regards the stack, since many installations can have a issues with speed now (not intended as a criticism). So eg something like Postgres, or MongoDB even for the DB Backend?




Running WP.com, I'm very sensitive too the performance implications of our stack. A small percentage change in performance could mean the difference of racks of servers for us. At Automattic we've also had a peek behind the curtain of pretty much every high-scale WP installation out there.

The vast majority of performance issues I've seen are not from something intrinsic to PHP or MySQL, but how people configure them. (MySQL is especially confounding.) There have been ports to other DBs but nothing that matches the performance of regular WP with a single layer of caching, like Batcache or Supercache.

For dynamic pageviews, ck2 is correct, our biggest barrier is just the amount of code we're parsing and executing on every pageload, which a different DB backend would not change. This problem is bigger on WP.com. I think we can fix this by becoming more conservative and clever about what we load for a given page and it's something I expect to be addressed bit by bit over the next few releases. (BTW ck2 if you want to work on that, please ping me!)

-----


Would you consider moving to a database abstraction layer ? There are many of us here who are running postgres in production already and would like nothing better than to maintain one database engine that we can run and maintain.

Again - I'm not advocating that you switch the default, but if switching database engines is not your bottleneck, then would you be willing to consider that option (maybe Kickstarter it)

-----


We don't currently have any interest in moving to a database abstraction layer. We do, however, allow you to drop in a db.php file that can replace the core database portion. That's not abstraction (you'll have to rewrite any MySQL-isms to be compatible with your DB of choice), but it is an option for people who absolutely cannot run MySQL. Microsoft wrote a WordPress plugin to do something like that: http://wordpress.org/extend/plugins/wordpress-database-abstr...

-----


There isn't anything in our feature roadmap or our growth plans that is hindered by MySQL. At some point I could imagine recommending a drop-in replacement like MariaDB.

-----


Thank you so much for taking the time to reply. This helps me understand the performance issues better. Thank you for making Wordpress what it is.

-----


I forgot to mention our biggest architectural change, which is already ongoing: an ever-increasing percentage of our codebase is shifting to Javascript instead of PHP. At some point I expect it to be the vast majority.

-----




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact

Search: