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
Running, improving and maintaining a site in th...
Search
Shravan Kumar Kasagoni
May 19, 2015
Technology
39
0
Share
Running, improving and maintaining a site in the real world
Shravan Kumar Kasagoni
May 19, 2015
More Decks by Shravan Kumar Kasagoni
See All by Shravan Kumar Kasagoni
Functional Programming in JavaScript
shravan
0
39
ASP.NET Core – Deep Dive on Building a Real Website
shravan
0
43
Cross-Platform Mobile Development using Visual Studio and Xamarin
shravan
1
42
Angular 2 with TypeScript
shravan
1
160
Building Next Generation Web Apps and Services using ASP.NET 5
shravan
0
91
Writing Application-Scale JavaScript:TypeScript
shravan
0
59
Real-time Communications with SignalR
shravan
0
53
Open Web Interface for .NET
shravan
0
150
Glance at Visual Studio 2013 ASP.NET and Web Tools 2013
shravan
0
80
Other Decks in Technology
See All in Technology
AIを共同作業者にして書籍を執筆する方法 / How to Write a Book with AI as a Co-Creator
ama_ch
2
130
AI バイブコーティングでキーボード不要?!
samakada
0
320
データを"持てない"環境でのアノテーション基盤設計
sansantech
PRO
1
100
20260415_生成AIを専属DSに_自動レポート作成_ハンズオン_交通事故データ
doradora09
PRO
0
110
目的ファーストのハーネス設計 ~ハーネスの変更容易性を高めるための優先順位~
gotalab555
8
2k
昔はシンプルだった_AmazonS3
kawaji_scratch
0
320
え!?初参加で 300冊以上 も頒布!? これは大成功!そのはずなのに わいの財布は 赤字 の件
hellohazime
0
160
EarthCopilotに学ぶマルチエージェントオーケストレーション
nakasho
0
270
AI時代 に増える データ活用先
takahal
0
170
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.4k
EBS暗号化に失敗してEC2が動かなくなった話
hamaguchimmm
2
180
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
390
Featured
See All Featured
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
370
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
380
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
350
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.4k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
110
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
94
Transcript
Running, improving and maintaining a site in the real world
Shravan Kumar Kasagoni
Agenda 1) Scenario: Scale 2) Scenario: Adapt to Change 3)
Scenario: Environments
Let’s get Real
Scenario: Scale
Scenario description Your site load varies over time. You need
to adapt. Smoothly. 5
Load profiles 6 INCREASING BATCH Load No load Load PREDICTABLE
UNPREDICTABLE
Step 1: Preserve server bandwidth PROBLEM: Your servers are wasting
bandwidth serving static files. 7
Step 1: Preserve server bandwidth SOLUTION: Serve static files from
blob storage. This is a step towards to delivering content from a content delivery network (CDN). 8
Step 2: Caching PROBLEM: Your servers have finite resources. You
don’t want to repeat work you don’t have to. 9
Step 2: Caching SOLUTION: Store ASP.NET page output cache in
Windows Azure Caching Service. 10
Step 3: Manual scale PROBLEM: You need more server resources.
11
Step 2: Manual Scale SOLUTION: Add more servers (horizontal scaling).
Use more powerful servers (vertical scaling). 12
13
Step 3: Auto-scale PROBLEM: Manual scaling reaction time means outages.
Manual scaling is busy work. 14
Step 2: Auto-scale SOLUTION: Use auto-scale. 15
16
Demo Scenario: Scale
Scenario: Change
Scenario description Your site isn’t done when you deploy to
production. You need to add new features. Change adds risk. 19
Step 1: Manage database schema PROBLEM: Your database and application
code need to stay in sync. 20
Step 1: Manage database schema SOLUTION: Use Entity Framework Data
Migrations. 21
Demo Scenario: Data migrations
Step 2: Manage deployments PROBLEM: People sometimes make misteaks. 23
Step 2: Manage deployments SOLUTION: Use deployment rollback. 24
25
Demo Scenario: Deployment rollback
Step 3: Leverage services PROBLEM: Large changes often require you
to add new features quickly. 27
Step 3: Leverage services SOLUTION: Take advantage of available Windows
Azure services. 28
Demo Scenario: Windows Azure Active Directory
Scenario: Multiple Environments
Scenario description Running a real site requires multiple internal environments.
Global availability requires multiple worldwide deployments. 31
Step 1: Dev / Test environments PROBLEM: Setting up development
web server environments is time consuming. You need to see your code running somewhere other than deployment before deploying. 32
Step 1: Dev / Test environments SOLUTION: Environment consistency via
deployment setup in Windows Azure Web Sites or VM images. Cost savings by paying only for what you need. 33
DISCOUNT VIRTUAL MACHINES 33% 25% DISCOUNT RESERVED WEB SITES CLOUD
SERVICES, HDINSIGHT MONTHLY CREDIT VISUAL STUDIO ULTIMATE WITH MSDN $150 CREDIT CARD REQUIRED NO MONTHLY CREDIT VISUAL STUDIO PREMIUM WITH MSDN $100 MONTHLY CREDIT VISUAL STUDIO PROFESSIONAL WITH MSDN $50
Step 2: Global Reach PROBLEM: It’s hard to deploy a
consistent environment in multiple datacenters. 35
Step 2: Global Reach SOLUTION: Use automated deployment workflow to
ensure consistency in deployment process. 36
Step 3: Continuous Delivery PROBLEM: Bugs and issues in your
code get harder to fix the longer it takes to find out about them. Deployment is a risky, error-prone operation. 37
Step 3: Continuous Delivery SOLUTION: Use continuous integration to automate
build, unit & integration testing. Use automated deployment workflow to ensure consistency in deployment process. 38
Demo Scenario: Multiple environment
Thank You