36

Robert MacLean BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

Embed Size (px)

Citation preview

Page 1: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM
Page 2: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

Robert MacLeanwww.sadev.co.za BBD Software

Get Ready For The Cloud

TRACK: Cloud & ALM

Page 3: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

3

AgendaGet ready for the cloud

The cloud is important!We do not have supported Azure here yet

All about planning & current applicationsThe Azure talk with no Azure bits

Why should you care about this talk?Pure in houseConsume the cloudHybridsPure cloud

Page 4: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

(On-Premises)

Infrastructure(as a Service)

Platform(as a Service)

Storage

Servers

Networking

O/S

Middleware

Virtualization

Data

Applications

Runtime

Storage

Servers

Networking

O/S

Middleware

Virtualization

Data

Applications

Runtime

You m

anag

e

Man

ag

ed b

y v

en

dor

Man

ag

ed b

y

vendor

You m

anag

e

You m

anag

e

Storage

Servers

Networking

O/S

Middleware

Virtualization

Applications

Runtime

Data

Software(as a Service)

Man

ag

ed b

y v

en

dor

Storage

Servers

Networking

O/S

Middleware

Virtualization

Applications

Runtime

Data

Page 5: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

5

Cloud Terms

Blob StorageWeb RolesWorker Roles

Page 6: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

6

Virtualisation!

Virtualise todayLimited big hardware vs. lot’s of small cheap hardwareLearn what is a problem in virtualisation

VM Hosting (IaaS)Create a Hyper-V imageUpload imageHow do people access that image?What about state?

Page 7: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

7

The General Theme

THINK IN LEGOLoosely CoupledSingle Responsibility AbstractionVery Light with Data

Page 8: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

8

Our Demo Story For Today

NASA gets ~3 500 applications for ~15 spotsDisqualifies ~700 for Medical, Educational, Professional etc…

Just a simple: Submit data > Parse > Analyse

Source: http://www.astronautforhire.com/2008/09/nasas-2009-astronaut-class-selection.html

Page 9: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

9

What’s in my toolbox?

Do you know CodePlex?ZeroMQ

http://zeromq.codeplex.com

AutoMapperhttp://automapper.codeplex.com

Page 10: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

10

Start with data

Structured & Unstructured

LINQ

2 SQL

Façade

WCF

Data Access O

perations

Page 11: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

11

demo

Page 12: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

12

How does this cloud?

Structured & Unstructured

LINQ

2 SQL

Data Access O

perations + Façade

LINQ

2 SQL

Structured

Blob Storage

WCF

Page 13: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

13

Overkill for crud?

Structured & Unstructured

LINQ

2 SQL

oData*

Page 14: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

14

Data Design Proven Practises

Choose where appropriateRelational data: SQL Server ≡ SQL AzureBlobs: File system ≡ Blob storageQueues: MSMQ ≡ AppFabric 2.0

Potential pain areasLimited Data TypesKeep Data Size, Growth & Transaction Volume in min

Reduce logic in SQL databases

Page 15: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

15

Connectivity Design Proven Practises

Interface (contract) based designUses standardsAbstract the connectivity layer away from the logic layer* non marketing way to tell you to use WCF

Page 16: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

16

Features we want in processing

ASAP Asynchronicity Light with data Great WCF, REST & oData supportPersistableMonitoring * Caching *

Page 17: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

17

Structure of our processing

Service

Service Service

Service

Data

Page 18: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

18

demo

Page 19: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

19

How does this cloud?

Service

Service Service

Service

Data

Page 20: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

20

Application Design Proven Practises

Lego againSmall pieces that do a job (function)Can operate independently

Worker rolesGreat for processing, better than web rolesCan run forever! …. Not really Expect the “Chaos Monkey” sometimes

Page 21: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

21

Worker Role?

App Queue Worker Role Service

Data

Page 22: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

22

demo

Page 23: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

23

How does Worker Role Cloud?

App Queue Worker Role Service

Data

Page 24: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

24

Regulation & Compliance

Where is your data stored?Personal info can’t leave the country*Store locally, process in the cloud

Page 25: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

25

Security Design Proven Practises

Security Golden Rule: Don’t roll your own You should prefer an external identify provider for AuthN & AuthZ Development Options

Today: WIF “Tomorrow”: AppFabric Access Control 2.0 (Labs)

Page 26: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

26

Why use WIF?

App

Security

App

Active Directory

App

WIF

AD, OAuth, etc…

Page 27: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

27

demo

Page 28: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

28

How does this cloud?

MVC App

WIF

AD, OAuth, etc…

Just a web role

Just a web role

Page 29: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

29

Deployment Design Proven Practises

Plan, plan, planWork on DNS and control that DNSUse IPv6 for forward thinking with Azure Connect

Packaging and Configuration is KEYPackage Application Binaries and Configuration Separately

Automate your deploymentsBuild components exist

Page 30: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

30

The General Theme… again

THINK IN LEGOLoosely CoupledSingle Responsibility AbstractionVery Light with Data

Page 31: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

31

Windows Azure 30 Day Pass

http://windowsazurepass.com/

Country:South Africa

Promo Code:DEVDAYS11JHB

Page 32: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

32

Grab the Azure Pass: DevDays11CT

Slides + Demos up Friday @ www.sadev.co.za

Plan, plan & plan some more

Calls to Action

Come to my talk in track 2 next

Page 33: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

33

Keep in Touch

facebook.com/msdevsa

@msdevsa

http://blogs.msdn.com/southafrica

Page 34: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

34

Don’t forget the Xbox Kinect show-down

after sessions this evening!

Page 35: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

35

DevDays 2011 Sponsors

PLATINUM SPONSORwww.bbd.co.za

SILVER SPONSORwww.dvt.co.za

SILVER SPONSORwww.ctutraining.co.za

Page 36: Robert MacLean  BBD Software Get Ready For The Cloud TRACK: Cloud & ALM

© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED

OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.