This is my presentation from code|works in NYC 2009 on Thin Server Architecture. The funny animal slides were "sleeper checks" as this was the morning session.
1. Extreme Scale: Thin Server
Architecture
Mitch Pirtle
codeworks new york city 2009
2. Wha?
As website interactivity demands put a bigger strain on
your beautiful code, faster internet connections and
more website visitors don't make it any easier. There is
a way to dramatically drop the overhead of rendering a
page, by asking the browser to do all the work. Learn
how to scale your applications to absurd extremes with
this simple, ingenious concept.
11. Problems with this approach
Ties computation with display
Significantly increases load
Significantly reduces opportunity to cache
IT DOESN’T SCALE
12. But wait, there’s more
Most developers suck at design
Most designers suck at code
We just mixed a huge load of markup and code
together in a big, amorphous glop
18. Wha?
Keeps display and logic separate
Pulls unique information separately
Cache is simpler to implement
Cache reused objects separately from dynamic
22. TSA to PHP developers
M M
V V
C C
PHP PHP Browser
23. Problems solved
Seperates display from computational work
Simplifies cache implementation
Lowers network latency, bandwidth usage
Users perceive fast, snappy response
Opens the door to rich internet applications (RIA)
29. TSA is platform agnostic
CODE: You can use Perl, Ruby, Python, PHP, etc.
CLIENT: You can use Dojo, jQuery, MooTools, etc.
DATA: The simpler the better...(next slide, Mitch)
30. Why develop in an
object language, just
to stuff mismatched
chunks of your
objects in a non-
object data store?
32. What MongoDB can do
Simplifies development
Stores in binary JSON objects
Return data directly to browser in JSON
Store data, binary objects, whatevah!