Loading...
Flash Player 9 (or above) is needed to view slideshows. We have detected that you do not have it on your computer.To install it, go here
-
mndoci favorited this 2 months ago
-
jboutelle favorited this 2 months ago
-
Added to the group Amazon Web Services by tracylaxdal
Slideshow Transcript
- Slide 1: zoomii.ca zoomii.com
- Slide 2: meta-slide • What’s Zoomii? • N,000–foot tech • 10-foot view: server startup • Future Tech • Why AWS?
- Slide 3: 100 dpi ~1 acre 256x256 tiles 46 Gigapixels
- Slide 4: EC2 – hosting S3 – backup/replication ECS – book data
- Slide 6: Javascript “Java” w/macros
- Slide 7: Home-made HTTP server caching load balancer object database monitoring replication
- Slide 8: Starting a new Server
- Slide 9: on desktop ec2_render.sh: echo \"update_exe.sh; screen -c render.rc“ > temp.txt ec2run <image_id> -t c1.medium -f temp.txt
- Slide 10: on new server Instance starts, with image containing: Java VM Bootstrap classes, scripts modified ‘/etc/rc.local’
- Slide 11: on new server /etc/rc.local Gets fresh Bootstrap from S3 Gets, executes startup script curl -s http://169.254.169.254/latest/user-data Contents: “update_exe.sh; screen –c render.rc”
- Slide 12: on new server update_exe.sh Downloads fresh binaries/scripts from S3 screen –c render.rc window 1: boxlink.sh window 2: render.sh
- Slide 13: on new server render.sh – starts render server Requests cover data touch data/covers/synch.active boxlink.sh – starts S3 replication service Polls data/ Sees ‘data/covers/synch.active’ Downloads active files from s3:/zoomii/data/covers … snap, diff3, diff3, diff2, diff1 Done. touch data/covers/synch.down
- Slide 14: on new server Render server Polling data/covers Sees ‘synch.down’ Loads files Listens on port 80 Uploads to s3:/zoomii/proxy/10.11.23.58.p80 : “I handle ‘/tiles/*’. Cache for 365d”
- Slide 15: on proxy server (load balancer) Polls s3:/zoomii/proxy Sees, gets ’10.11.23.58.p80’ Starts forwarding ‘http://zoomii.com/tiles/*’ to ‘http://10.11.23.58:80/tiles/*’ Caches responses from 10.11.23.58 for 365 days, and tells requesting browsers to do the same
- Slide 16: ongoing, on new server Render server Writes rolling log files to data/log Polls data/covers for fresh files Boxlink, the replicator: Polls s3:/zoomii/data/covers Downloads fresh files Polls data/log Uploads fresh log files
- Slide 17: Future Tech EBS – Elastic Block Store 1GB to 1TB persistent network volumes Cheap - $0.10/GB/month ‘Instant’ snapshots to S3 New volumes lazy-load from snapshots Means: Faster server startup – 3 minutes vs. 3 hours Lazy-load 180 GB Fast server upgrades – 20 seconds downtime start new, detach old, attach new
- Slide 18: Why AWS? Flexible (new instance in 3 minutes) + Automatable + Low lock-in + By-the-minute billing = $600 vs. $9,000 for launch month = can bootstrap
- Slide 19: Speaking of Bootstrapping Seeking more funding Short-term development / consulting contracts welcome Angel investments welcome chris@zoomii.com

