By Harry Fuecks

Flickr, PHP and that word… scaling

By Harry Fuecks

Via Keith, Flickr and PHP (PDF) by Cal Henderson. Some interesting quotes;

– Stateless method-call APIs are easy to extend

– [Unicode] It

  • Normalised data is for sissies … Keep multiple copies of data around … Makes searching faster

    This is really harmfull, Having 13 SELECTs per I/U/D is a nightmare. I believe they will start having hard time with data integrity and consistency in the long run. I can’;t imagine how they keep track of all the redundant data that needs to be all the same.

    In my opinion you should balance between normalization and denormalization, But what is discussed in the presentation doesn’t sound like a proper balance. I would highly recommend to have a clean & normalised design over performance. Buy more hardware, replicate, load balance, but don’t screw your db design.

  • gabe

    We manage our code base (~100,000 – 150,000 lines of PHP) using CVS. Soon it will be subversion. Granted that does include a lot of HTML also…

    Seems like the redundant data issue would be more trouble.

    Why does this site pop up an ad when I click anywhere? Annoying!

  • Derek Martin

    It’s easy to say that you should value proper normalisation over performance, but when your site is your only public face and only source of income, the reality is that you *must* put performance first. If users can’t see the site they can’t give you their money, and you can’t gain their respect.

    “Waiting. Waiting. Gone.” – A. User.

  • Anonymous

    Normalization plus caching is the way to go. It’s a wonder flickr continues to function.

Get the latest in Front-end, once a week, for free.