gdc 2010 architecture final slideshare edition
TRANSCRIPT
![Page 1: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/1.jpg)
![Page 2: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/2.jpg)
Open Source Secrets: The Architecture Behind a Successful
Virtual Goods BusinessTimothy Fitz – IMVU Inc.
![Page 3: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/3.jpg)
An online community where members use 3D avatars to meet new people, chat, create, and play
What’s IMVU?
![Page 4: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/4.jpg)
Company Overview
Founded in April, 2004
Based in Palo Alto, CA
70 employees
3 institutional rounds
$30M raised
![Page 5: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/5.jpg)
0
10
20
30
40
45M
Dec-05
Jun-06
Dec-06
Jun-07
Dec-07
Jun-08
Dec-08
Jun-09
Oct-09
3D avatars
Virtual goods
45M registered users
10M uniques/month
$30M+ revenue run rate
Profitable
Cumulative Registrations
Snapshot
Registered Users
![Page 6: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/6.jpg)
User-Generated Content
0.0
0.5
1.0
1.5
2.0
2.5
3.0M
06/04
12/04
06/05
12/05
06/06
12/06
06/07
12/07
06/08
12/08
06/09
3 Million Virtual Items
![Page 7: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/7.jpg)
Celebrating with Mohawks
![Page 8: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/8.jpg)
Shameless Promotional Plug
We’re Hiring!www.imvu.com/jobs
![Page 9: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/9.jpg)
Overview
Development Process Server Architecture Client Architecture
![Page 10: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/10.jpg)
Always Be Shipping
![Page 11: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/11.jpg)
Client: 1-2 releases/dayWebsite: 35-50 release/day
![Page 12: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/12.jpg)
Ship Incremental Value
![Page 13: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/13.jpg)
Always Release Ready
![Page 14: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/14.jpg)
QA can’t afford to repeat themselves.
![Page 15: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/15.jpg)
Write tests for everything.
![Page 16: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/16.jpg)
No tests? Not done.
![Page 17: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/17.jpg)
Tests are a contract.
![Page 18: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/18.jpg)
Commit. Go Green. Push.Repeat.
![Page 19: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/19.jpg)
Cluster
Scaled up LAMP stack All state in memcache/MySQL No instance servers Dumb message bus for realtime
![Page 20: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/20.jpg)
Cluster Size
365 Apache nodes 89 MySQL nodes 107 Memcache nodes 102 Perlbal nodes 22 Mogile disk nodes 15 solr nodes
![Page 21: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/21.jpg)
Before…
![Page 22: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/22.jpg)
![Page 23: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/23.jpg)
![Page 24: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/24.jpg)
HTML/JS
![Page 25: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/25.jpg)
Not HTML/JS
![Page 26: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/26.jpg)
Client Code by Language
Language Lines
C++ 168k
Python 129k
Javascript 36k
HTML 24k
CSS 13k
![Page 27: Gdc 2010 architecture final slideshare edition](https://reader036.vdocuments.us/reader036/viewer/2022062710/559869e01a28ab1a0b8b4620/html5/thumbnails/27.jpg)
Shameless Promotional Plug
We’re Hiring!www.imvu.com/jobs