The Architecture of Wordpress.com
Friday, February 29th, 2008If these notes are incomplete, inaccurate, or misspelled, it’s completely my fault and not Matt’s.
Presentation by Matt Mullenweg
Architecture?
Scaling.
-
Types of Scaling:
- Platform
- Business
- Community
- People
-
over 800,000 splogs deleted
- stats of WP
Scaling Platform
Matt’s Magic Mini-Cluster
- hard to figure out what people really want
-
scaling is a good problem to have it, if you ever have it
-
7 boxes about $1500/mo
- 2 load balancers
- any cpu
- 2 gb mem
- any disk
-
pound + wackamole + Spread
-
2 databases
- any cpu
- 4GB + memory
- fast disks, RAID
-
master + slave MySQL setup
-
3 web servers
- fast cpu
- 2 gb mem
- any disks
-
well-configured apache
-
Use HyperDB
- a database class they developed to handle multiple DBs; load balance the DB at the software level
A Few Rules to Follow
- Put Everything in Subversion
- Be Stateless
- stay away from DB session
- let every request stand on it’s own
- then it becomes a matter of arithmetic when it comes to scaling
- Memcached
- distributed hash table
- allows you to manage caching well
- caches things in memory
- easily put things in a memcache and pull it out, and expire it
- Just use Wordpress.com
- http://2007.wordcamp.org/schedule/hyperdb-and-performance
Scaling Community
- most importantly, once you get to a certain point, just let go (http://wordpress.org/extend/ideas/)
- institutionalized serendipity
- personalize the experience at a certain point
- check out: http://ma.tt/about
Scaling Business
- Upgrades; free is great
- took an a la carte approach to features
- didn’t work entirely
- Ads: personally doesn’t like ads
- shows only to random visitors
- if you use firefox, you’ll never see an ad on wordpress.com (because Matt likes Firefox)
- pissed fewer people off, and click through rates much much higher
- VIP
- helps run other’s blogs
- “fox news” unfortunately (ha ha)
Scaling People
- don’t have to micromanage
- ideally are better at their job then you
Hiring
- Great People = rich environment + worthwhile problems
- try to tackle something that’s slightly out of your league
- Passion for Space
- Personality Fit (it’s like getting married)
- Ability to Learn (Curiosity)
- no correlation between intelligence and productivity
- skills you came into a job with are not the skills that you’ll need in the future necessarily
- Familiarity with Technologies
- least important
- don’t hire for specific skill sets
- Taste
- if something seems off with them, default answer is “no”
- if you get any red flags during the hiring process, I would recommend moving on
- one mediocre person will drain a sea of bright people (they will not “suffer fools”)
- work with a person on a contract basis first
Scaling Brand
In a Name
- related Proctor and Gamble story
- decided to name product to “Ivory” (soap)
- over 100 years
-
have over 20 brands that make over a billion dollars a year
-
recommends “On Writing Well” by Zissner