Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Azure NUS ACM talk 2 - Scaling your Webapp on A...
Search
laurenceputra
September 22, 2012
Technology
120
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Azure NUS ACM talk 2 - Scaling your Webapp on Azure
By Ruiwen and Laurence
laurenceputra
September 22, 2012
More Decks by laurenceputra
See All by laurenceputra
STEM in the industry
laurenceputra
0
44
Azure Geek Girls talk
laurenceputra
1
72
Azure NUS ACM talk 1 - Meeting your VM
laurenceputra
1
91
Leadership Class Presentation
laurenceputra
0
100
Azure talk for NUS
laurenceputra
1
110
GeekcampSG - Introduction to Distributed Systems
laurenceputra
5
1.5k
MongoDB for PHP User Group SG
laurenceputra
2
1.2k
Other Decks in Technology
See All in Technology
制約理論(ToC)入門 2026版
recruitengineers
PRO
9
2.6k
[potatotips #96] Give Your AI Agent the Flutter Playbook
korodroid
0
110
自宅NWにISR4331を導入してみた話
okaits
0
110
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
20k
Model Studio CLI × Token Plan
maigo999
0
190
生成 AI の基礎 〜 サンプル実装で学ぶ基本原理
enakai00
7
4.4k
【CEDEC2026】Creative Approaches to Localizing the Dialects and Unique Speech of Umamusume: Pretty Derby Characters in English
cygames
PRO
3
25k
猫付きpingコマンドを自作
uyuki234
0
260
案件に一番詳しいAIを Amazon Bedrock AgentCore で作る ― 知見が知見を生むチームへ / Compounding Knowledge with AgentCore
yusukeshimizu
1
150
Flutter × BLE Centralを自前Pluginで実装する設計パターン - MethodChannel / EventChannelで作る双方向ブリッジの実践 / Building Custom Flutter BLE Central Plugins: Bidirectional Bridging with Method & Event Channels
bitkey
PRO
0
150
【GCC2026】大規模言語モデルを活用した内製検索サービスの社内展開や業務活用
bandainamcostudios
PRO
0
320
今こそ聞きたいソフトウェア設計 ドメイン駆動設計再入門
masuda220
PRO
17
7.6k
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
390
The Cost Of JavaScript in 2023
addyosmani
55
10k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
AI: The stuff that nobody shows you
jnunemaker
PRO
9
930
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
260
Being A Developer After 40
akosma
91
590k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
57k
The Limits of Empathy - UXLibs8
cassininazir
1
610
The Mindset for Success: Future Career Progression
greggifford
PRO
0
460
Transcript
WINDOWS AZURE SCALING YOUR APPS HOW TO GET STARTED, AND
WHAT YOU NEED TO GET GOING by & Laurence Putra Chua Ruiwen
WHAT THIS TALK IS NOT A guide to using x,
y, or z web development framework. OR A 100% sure fire way to scale
BUT RATHER some of the best practices As well as
tools that you will find helpful in your app.
QUICK POLL HOW MANY OF YOU ... 1. ... run
your own servers? 2. ... runs a website of some sort? 3. ... understands distributed systems? 4. ... has done sysadmin stuff before?
WHAT DO YOU GUYS WHAT TO HEAR ABOUT?
CLOUDFLARE Provides you with DNS layer caching
None
None
WHY USE IT?
DEMO
MONGODB Why MongoDB? 1. It's AWESOME 2. It's FLEXIBLE 3.
It's FAST
And it’s really easy to do all those hardcore DevOps
stuff that you’ve been hearing about. Stuff like High Availability, Sharding, and Backups ...
... Add in the fact that you can add in
new fields any time. Fast ...
... and backup your ENTIRE database without facing performance issues
WHO USES MONGODB Craigslist, SAP, Codecademy, Disney, IGN, EA, Guardian,
Business Insider, Forbes, New York Times, CNN, Trello, bit.ly, Eventbrite, Foursquare, College Humor, Justin.tv, Grooveshark, about.me...
KEY CONCEPTS
SHARDING
HOW IT IS DONE? Spiltiing data into logical chunks based
on a predefined shard key
None
None
REPLICATION “Replication in computing involves sharing information so as to
ensure consistency between redundant resources, such as software or hardware components, to improve reliability, fault-tolerance, or accessibility. - Wikipedia”
HUMAN SPEAK “Storing your data multiple times in multiple locations
and praying hard that all of them do not die at the same time.”
None
None
None
None
Reads on any of the nodes Writes only on master
node Eventually correct data
MERGING THE 2
None
None
None
DEMO I am going to take a live production server
down Really Geekcamp.SG's server
SETTING UP MONGODB MongoDB website
MIXPANEL Awesome Analytics site. Allows you to see ALL your
stats in real-time
USING IT As simple as m i x p a
n e l . t r a c k ( " B u t t o n c l i c k e d " ) ;
DEMO
HOW DOES IT ALL COME TOGETHER?
DEMO GEEKCAMP.SG'S CODE Github link
SELF INFLICTED PAIN
None
NETFLIX SIMIAN ARMY Chaos Monkey Latency Monkey Conformity Monkey Doctor
Monkey Janitor Monkey Security Monkey Chaos Gorilla
CHAOS MONKEY Shuts down instances randomly Allows the team to
learn about weaknesses in the system Gets the team to build auto recovery systems
LATENCY MONKEY Introduces artificial delays in api client-server communication layer
Simulates server degradation Useful for testing fault tolerance of new services
CONFORMITY MONKEY Shuts down servers that don’t adhere to best
practices Forces the service owner to relaunch them properly
DOCTOR MONKEY Runs checks on health of servers Remove unhealthy
servers from service and alerts service owner
SECURITY MONKEY Scans for security violations or vulnerabilities Ensures that
SSL and DRM certs are not expiring
CHAOS GORILLA Shuts down all instances within an availability zone
Talk about overkill
BEST PART IS SIMIAN ARMY IS ENTIRELY OPEN SOURCE Github
link here!
NEW RELIC
THE END QUESTIONS?
None