thin server architecture
Post on 29-Jan-2018
9.052 Views
Preview:
TRANSCRIPT
Extreme Scale: Thin Server ArchitectureMitch Pirtle
codeworks new york city 2009
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.
Before we begin
Coffee?
Breakfast?
How it all started
Data Center
Web server
Data server
Internet
Hey, this thing is taking off
Data Center
Web server
Data server
Internet
Ok, we can handle that
Data Center
Web server
Data server
Internet
See the pattern?
Problems with this approach
Ties computation with display
Significantly increases load
Significantly reduces opportunity to cache
IT DOESN’T SCALE
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
There’s got to be a better way.
Thin Server Architecture
Wha?
Keeps display and logic separate
Pulls unique information separately
Cache is simpler to implement
Cache reused objects separately from dynamic
What it looks like
BrowserPHPPHP
TSA to PHP developers
MV
C
M
CV
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)
Great example: Dojo
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)
Why develop in an object language, just to stuff mismatched chunks of your objects in a non-object data store?
MongoDBDocument store with speed, scale of key/value and creature comforts of relational systems
What MongoDB can do
Simplifies development
Stores in binary JSON objects
Return data directly to browser in JSON
Store data, binary objects, whatevah!
Time for my favorite gameStump the Nerd™
Great resources
Thin Server Architecture
http://www.thinserverarchitecture.com/
http://www.slideshare.net/rajivmordani/practical-thin-server-architecture-with-dojo-peter-svensson-presentation
Rich Internet Applications
http://en.wikipedia.org/wiki/Rich_Internet_application
Thanks!http://www.spacemonkeylabs.comhttp://www.mitchitized.com
Photo credits
Bulldog Frances (stock photo by jaimo)
Cat (stock photo by klsa12)
Sleepy zoo lioness (stock photo by Meeshoo)
top related