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
Qcon London 2015: Building the Halo 4 Services ...
Search
Caitie McCaffrey
March 05, 2015
450
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Qcon London 2015: Building the Halo 4 Services with Orleans
Caitie McCaffrey
March 05, 2015
More Decks by Caitie McCaffrey
See All by Caitie McCaffrey
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
The Path Towards Simplifying Consistency in Distributed Systems
caitiem20
1
430
Argus Papers We Love
caitiem20
14
1.3k
The Verification of a Distributed System
caitiem20
22
2.3k
We Hear You Like Papers: Eventual Consistency
caitiem20
14
900
The Verification of a Distributed System
caitiem20
12
870
The Verification of a Distributed System
caitiem20
6
850
A Brief History of Distributed Programming: RPC
caitiem20
31
6.9k
Building Scalable Stateful Services
caitiem20
12
1.9k
Featured
See All Featured
Fireside Chat
paigeccino
42
4k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
410
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
160
The SEO identity crisis: Don't let AI make you average
varn
0
520
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
640
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
440
How to train your dragon (web standard)
notwaldorf
97
6.7k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
260
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
300
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
320
The agentic SEO stack - context over prompts
schlessera
0
850
Transcript
Building the Halo 4 Services with Orleans Qcon London 2015
Caitie McCaffrey! Distributed Systems Engineer @Caitie CaitieM.com
None
None
Presence Statistics Title Files Cheat Detection User Generated Content
None
None
None
None
Halo:CE - 6.43 million Halo 2 - 8.49 million Halo
3 - 11.87 million Halo 3: ODST - 6.22 million Halo Reach - 9.52 million
$220 million in sales ! 1 million players online Day
One
$300 million in sales ! 4 million players online !
31.4 million hours Week One
11.6 million players ! 1.5 billion games ! 270 million
hours Overall
Architectural Challenges
Load Patterns Load Patterns
Azure Worker Roles Azure Table Azure Blob Azure Service Bus
Always Available
Low Latency & High Concurrency
Stateless 3 Tier ! Architecture
Latency Issues
Add A Cache
Concurrency Issues
Data Locality
The Actor Model A framework & basis for reasoning about
concurrency A Universal Modular Actor Formalism for Artificial Intelligence ! Carl Hewitt, Peter Bishop, Richard Steiger (1973)
Send A Message Create a New Actor Change Internal State
State-full Services
Philip A. Bernstein, Sergey Bykov, Alan Geller, Gabriel Kliot, Jorgen
Thelin Orleans: Distributed Virtual Actors for Programmability and Scalability eXtreme Computing Group MSR
“Orleans is a runtime and programming model for building distributed
systems, based on the actor model”
Virtual Actors “An Orleans actor always exists, virtually. It cannot
be explicitly created or destroyed”
Virtual Actors • Perpetual Existence • Automatic Instantiation • Location
Transparency • Automatic Scale out
Runtime • Messaging • Hosting • Execution
Messaging Guarantees
Let’s Talk About CAP
Orleans is AP
Programming Model • .NET Framework! • Actor Interfaces! • Promises!
• Actor References • Turns • Persistence
None
Programming Model • .NET Framework • Actor Interfaces • Promises
• Actor References! • Turns • Persistence
None
Programming Model • .NET Framework • Actor Interfaces • Promises
• Actor References • Turns! • Persistence
None
Reliability “Orleans manages all aspects of reliability automatically”
TOO!
None
TOO!
TOO!
Orleans & Halo
None
Halo 4: Statistics Service
Player Grain
Game Grain
None
Performance & Scalability
“Orleans applications run at very high CPU Utilization. We have
run load tests with full saturation of 25 servers for many days at 90%+ CPU utilization without any instability”
None
Programmer Productivity & Performance
Get Orleans https://github.com/dotnet/orleans!
Questions @Caitie