Day 1
|
| |
Introduction to Distributed Systems |
- What is a distributed system?
- Why do we distribute tasks and responsibilities?
- Look at where the components live.
- An overview of the technologies used by .NET developers (WCF, IIS, MSMQ, WAS, MS-DTC, SQL Server Service Broker, Workflow Foundation, BizTalk, Serialization)
|
|
| |
Distributed Application Design Patterns, Part 1 |
- Message exchange patterns
- Validation of request
- Sanitizing response
- Routing patterns
- Workflow patterns
|
|
| |
Distributed Application Design Patterns, Part 2 |
- Versioning Patterns
- Discovery Mechanisms
- Subscription Based Services
- Exception Handling Patterns
|
|
| |
WCF |
- Connected Systems
- Distributed technologies
- SOAP vs. REST designs
- Service Orientation
- Introducing WCF
- Services and endpoints
- Consuming WCF services
- Common questions
|
|
Day 2
|
| |
Designing SOAP Services |
- WS-* Choreographies
- Transport Neutrality
- Interoperability with other frameworks
- Integration with other systems
|
|
| |
Designing REST Services |
- Service design styles
- Understanding REST
- Resource Oriented Architectures (ROA)
- WCF support for REST/ROA
- Enabling Ajax/JSON integration
- Syndication programming model
- OData/WCF Data Services
|
|
| |
Versioning |
- Versioning Data
- Versioning SOAP Endpoints
- Versioning REST Endpoints
|
|
| |
Serialization |
- Simplified XML Serialization
- Full XML Serialization
- JSON
- Binary Serialization
|
|
Day 3
|
| |
Designing Long-Running Systems |
- Building long-running systems
- Event-driven (reactive) architectures
- Responding to human events
- Overview of Microsoft technologies: WF/AppFabric, BizTalk Server, and SharePoint
|
|
| |
Workflow/AppFabric Foundation |
- Building reactive systems
- Components of the WF framework
- Understanding workflows and activities
- Introduction to AppFabric
- Hosting workflow services via AppFabric
|
|
| |
BizTalk Server |
- Microsoft’s integration server product
- Integration through “messaging”
- Adapters, pipelines, maps, etc
- WCF integration for SOAP/REST
- Orchestration designer and runtime
|
|
| |
SharePoint/MOSS |
- Microsoft’s “human workflow” technology
- Notifications in SharePoint
- Excel Services
- Word Automation Services
|
|
Day 4
|
| |
Identity Architecture |
- The "CIA" of security
- Understanding Trust
- Credentials and authentication
- Authorization options (eg. SAML)
- Federation and claims
|
|
| |
Transactions |
- Anatomy of transactions
- Using transactions in Windows
- Unit of Work modeling
- When to use compensation instead of transactions
|
|
| |
Concurrency |
- Using the Thread Pool
- Asynchronous operations/callbacks
- Reactive Extensions for .NET
- Parallelism in .NET 4.0
- Patterns for building concurrency
|
|
| |
Manageability |
- Configuration
- Performance Counters
- WMI Instrumentation
- Event Log
- System.Diagnostics Tracing
- ETW
|
|
Day 5
|
| |
Scalability |
- Stateless design
- Database Sharding
- Optimizing for Reads
- Optimizing for Writes
- Caching (memcached and Windows Server AppFabric)
- Eventual Consistency
|
|
| |
Reliability |
- Building reliable systems
- Reliable messaging (WS-ReliableMessaging)
- Sessions vs. reliable sessions
- Queued messaging
- Combining queues and transactions
- Compensating transactions
|
|
| |
Cloud Computing |
- Overview of Cloud Space
- Comparison of Cloud Providers
- Windows Azure Architecture
- Azure AppFabric
- Integration with on premises systems
|
|