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
0
37
Running, improving and maintaining a site in the real world
Shravan Kumar Kasagoni
May 19, 2015
Tweet
Share
More Decks by Shravan Kumar Kasagoni
See All by Shravan Kumar Kasagoni
Functional Programming in JavaScript
shravan
0
37
ASP.NET Core – Deep Dive on Building a Real Website
shravan
0
42
Cross-Platform Mobile Development using Visual Studio and Xamarin
shravan
1
40
Angular 2 with TypeScript
shravan
1
160
Building Next Generation Web Apps and Services using ASP.NET 5
shravan
0
89
Writing Application-Scale JavaScript:TypeScript
shravan
0
56
Real-time Communications with SignalR
shravan
0
50
Open Web Interface for .NET
shravan
0
140
Glance at Visual Studio 2013 ASP.NET and Web Tools 2013
shravan
0
76
Other Decks in Technology
See All in Technology
猫でもわかるAmazon Q Developer CLI 解体新書
kentapapa
1
160
Zero Trust DNS でより安全なインターネット アクセス
murachiakira
0
120
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
0
390
ざっくり学ぶ 『エンジニアリングリーダー 技術組織を育てるリーダーシップと セルフマネジメント』 / 50 minute Engineering Leader
iwashi86
6
3.5k
入院医療費算定業務をAIで支援する:包括医療費支払い制度とDPCコーディング (公開版)
hagino3000
0
120
ViteとTypeScriptのProject Referencesで 大規模モノレポのUIカタログのリリースサイクルを高速化する
shuta13
3
230
From Natural Language to K8s Operations: The MCP Architecture and Practice of kubectl-ai
appleboy
0
370
Retrospectiveを振り返ろう
nakasho
0
140
オブザーバビリティが育むシステム理解と好奇心
maruloop
3
1.6k
serverless team topology
_kensh
3
250
アノテーション作業書作成のGood Practice
cierpa0905
PRO
0
310
スタートアップの現場で実践しているテストマネジメント #jasst_kyushu
makky_tyuyan
0
140
Featured
See All Featured
Side Projects
sachag
455
43k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Code Review Best Practice
trishagee
72
19k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
2.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Automating Front-end Workflow
addyosmani
1371
200k
Music & Morning Musume
bryan
46
6.9k
Site-Speed That Sticks
csswizardry
13
930
We Have a Design System, Now What?
morganepeng
53
7.8k
Navigating Team Friction
lara
190
15k
Become a Pro
speakerdeck
PRO
29
5.6k
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