WordPress.com – безплатна и свободна блог платформа, която отнася над 40 милиона зареждания на ден. С много пари всеки може, но как им се получава с по-малко. Разказва Николай Бачийски на OpenFest.
Работата я вършат 300 машини, разположени на четири места в САЩ. Три от четирите места са в Тексас. nginx е супер, засега го ползват само за load balancer. apache няма, litespeed сервира всичко, но не е свободен софтуер, когато има проблеми с него не може да бъдат решени и затова ще го заменят с nginx. fastcgi изпълнява кода – бързо, следователно – хубаво. Тестват php-fpm, но не работи винаги. Останали са на php4, заради скорост и съвместимост. APC за opcode кеш.
За база данни – MySQL 4.1, но нещо не ги кефи напоследък. DB сървърите – на групи, в които един master и 4-6 slave за скорост на репликацията.
Между кода и базата – вълшебен hyperDB приложен слой. Зад магията hyperDB e абстрактна php библиотека, която прави sharding (partitioning), репликация, управлява групи на бази и failover, когато не може да прави останалите.
Базите са бавни. WordPress.com кешират зверски, но това им усложнява програмирането. Може да кешират готовия html, но актуалността е проблем, особено с динамичните данни и затова почти не го правят. Малко batcache ползват, повече обектен кеш и много memcache на целеви групи. Синхронизират кеша между групи и дейтацентрове. Засега 2 от 3 заявки са вече кеширани.
Статичните неща, като css файлове, javascript код и картинки на платен CDN от panther. Картинките не винаги ги качват на CDN-a, защото е скъпо. varnishd е нещо ново, революционно и супер, ползват го като кеш и reverse proxy, но може още и по-добре. Файловете идват от амазон s3 или вътрешна nfs група, която трябва да се замени с нещо по-ефективно.
Няма коментари ↓
Хубаво ми е, когато хората коментират. Чета внимателно всеки коментар и отговарям, когато имам какво да кажа.
Коментирайте, моля: