While doing all of this blogging on cloud computing lately, it came to my realization that I should probably put together a template/outline for a complete set of posts to cover everything that I'd like to discuss, and to perhaps serve as an outline for a book or at least a series of white papers. What I've come up with so far is below, and I'll modify this list as I go along refining the topics:
Working title: Building Cloud Applications with .NET, Azure, and Amazon
Services
I.
Introduction
1.
Overview
a.
What is cloud computing?
b.
What problems does cloud computing solve?
c.
Business Benefits of Cloud Computing
d.
Components of a cloud application
i.
Table based storage
ii.
File based storage
iii.
Service bus
iv.
Workflow
v.
Web front ends
vi.
Dynamic processing allocation
vii.
Queue based messaging
viii.
Web and worker roles
ix.
Mesh Services
x.
Data services
xi.
Geographic diversity
xii.
Elastic addresses
e.
Where are we going in this book?
2.
Cloud Computing Architectural Patterns
a.
Overview
b.
Example Architectures
i.
Processing Pipelines
ii.
Batch Processing Systems
iii.
Websites
c.
Characteristics of Cloud Systems
i.
Loosely Coupled
ii.
Self scalable
iii.
Highly Parallel
iv.
Must be reboot and relaunch resilient
v.
Distributed storage and computing supporting
failover
II.
Cloud Services: Azure and Amazon
3.
Windows Azure Services
a.
Overview
b.
Comparison to reference architecture
c.
Components of Azure
i.
Internet Service Bus (.NET Services)
ii.
Azure web applications
iii.
Mesh
iv.
SQL Data Services
4.
Amazon Services
a.
General overview
b.
S3
i.
Buckets,
ii.
…
c.
EC2
i.
AMI’s
ii.
Kernels
iii.
Security Groups
d.
SQS
e.
SimpleDB
5.
Comparison of Azure and Amazon Cloud Services
a.
Similarities and Differences
b.
Using the two together
III.
Programming the Cloud with .NET
6.
Web front ends
a.
ASP.Net applications for Azure
b.
ASP.NET on Amazon
7.
The Internet Service Bus: Connecting Desktops
and Servers to the Cloud and to each other
a.
Overview of ISB
b.
Connecting to the Cloud to request Services
c.
Integrating with Partners through the ISB
8.
Storing and Retrieving Data in the Cloud
a.
Blob storage: Azure blobs and S3 storage
b.
Table data storage: Azure tables and Amazon
SimpleDB
9.
Databases
a.
SQL Data Services
b.
Connecting to your SQL Server
c.
Amazon SimpleDB SQL
10.
Queuing: using Azure and Amazon Queues
11.
Workflow: Orchestrating the Cloud
a.
MS Workflow
b.
Self implemented workflow
12.
Mesh Services: Replicating Data
13.
IV.
Deploying, Operating and Optimizing Cloud
Applications
13.
Application Packaging:
a.
Azure packages
b.
Amazon AMI’s
14.
Deployment to the Cloud:
a.
Provisioning Azure applications
b.
Deploying AMI’s at Amazon
15.
Geodiversity
a.
Using Azure Geodiversity
b.
Amazon Availability Zones
c. Amazon Cloud Front
16.
Data partitioning
a.
Why Partition the Data?
b.
Partitioning Azure Table Data
c.
Similar for Amazon
17.
Monitoring
a.
Logging
b.
Self monitoring in the cloud
c.
Remote cloud monitoring
d.
Talking back to OSS systems
V.
Closing
18.
Best Practices for Cloud Computing
a.
Storage
b.
Queueing
c.
Table data manipulation
d.
Start multiple instances at once
e.
Plan for failure
19.
Cloud Computing Futures
a.
Automatic Demand Based Allocation
b.
Better Monitoring
c.
Windows Live Services
d.
Advanced Amazon Services
i.
Mechanical Turk
ii.
Payment Services
iii.
Search
32093343-62a8-49df-b11b-9af98eda9f99|0|.0