Download presentation
Presentation is loading. Please wait.
1
Declarative Services in.NET 4.0 Alan Smith SDC 2010 – 16 th March 2010
2
Alan Smith Developer, Trainer, Mentor, Evangelist – Know IT Consulting “Connected Systems Developer” MVP Microsoft “Connected Technology Advisor” Contact: – www.CloudCasts.net – geekswithblogs.net/asmith – bloggersguidetobiztalk@gmail.com
3
.NET 4.0 at your Service Windows Communication Foundation (WCF) – Simplified Configuration – WS-Discovery – Routing Service – Improved REST support
4
.NET 4.0 at your Service Windows Workflow Foundation (WF) – New workflow runtime – New workflow designer – New activity model – New WCF integration capabilities
5
.NET 4.0 at your Service WCF Workflow Services – Workflow designer used to create WCF services – Workflow exposed through WCF endpoint – Powerful integration with WCF – One of many uses for WF
6
.NET 4.0 at your Service Windows Server AppFabric Application Server Extensions (AppFabric) – Formally “Codename Dublin” – Enhanced WCF and WF hosting capabilities – Workflow persistence – Workflow and service management – Distributed in-memory cache (formally “Codename Velocity”)
7
Workflow Service Concepts ConceptDescription DeclarativeService implementation is declared using XAML PersistentState of workflow can be serialized to data store Long-RunningService lifetime can be longer than first call duration DurableService instances can survive host restarts
8
Classic WCF Service Client can call methods in any order Service is instanced on per-call basis Order state is maintained in LOB Database [ServiceContract(Name = "OrderManagement")] public interface IOrderManagement { [OperationContract] void RegisterOrder(Order newOrder); [OperationContract] void ConfirmOrder(Order newOrder); [OperationContract] void CancelOrder(Order newOrder); }
9
Classic WCF Implementation Warehouse Database AppFabric Order Manager Service ClientRegister Id = 123 OrderIDState Register Id = 456 Conform Id = 123 Register Id = 789 Cancel Confirm Id = 456 OrderIDState 123Registered OrderIDState 123Registered 456Registered OrderIDState 123Confirmed 456Registered OrderIDState 123Confirmed 456Registered 789Registered OrderIDState 123Confirmed 456Registered 789Cancelled OrderIDState 123Confirmed 456Confirmed 789Cancelled
10
Stateful Services – Classic WCF Client maintains session with service – Secure session – Reliable session – Transport session Service instancing configured appropriately – Per call – Per session – Single
11
WCF Workflow Service RegisterOrder creates workflow instance Order state is maintained in workflow instance ConformOrder or CancelOrder is then called Correlation needed between service calls
12
Register (123) AppFabric Persistence Database AppFabric Order Manager Service ClientRegister Id = 123 ConfirmConfirmCancelCancel 123123 ConfirmConfirmCancelCancel 123123
13
Register (456) AppFabric Persistence Database AppFabric Order Manager Service ClientRegister Id = 456 ConfirmConfirmCancelCancel 456456 ConfirmConfirmCancelCancel 123123 ConfirmConfirmCancelCancel 456456
14
AppFabric Persistence Database ConfirmConfirmCancelCancel 123123 Confirm (123) AppFabric Order Manager Service ClientConform Id = 123 ConfirmConfirmCancelCancel 123123 ConfirmConfirmCancelCancel 123123 ConfirmConfirmCancelCancel 456456 ConfirmConfirmCancelCancel 123123
15
Register (789) AppFabric Persistence Database AppFabric Order Manager Service ClientRegister Id = 789 ConfirmConfirmCancelCancel 789789 ConfirmConfirmCancelCancel 123123 ConfirmConfirmCancelCancel 456456 ConfirmConfirmCancelCancel 789789
16
AppFabric Persistence Database ConfirmConfirmCancelCancel 789789 Cancel (789) AppFabric Order Manager Service ClientCancel Id = 789 ConfirmConfirmCancelCancel 789789 ConfirmConfirmCancelCancel 789789 ConfirmConfirmCancelCancel 456456 ConfirmConfirmCancelCancel 123123 ConfirmConfirmCancelCancel 789789
17
AppFabric Persistence Database ConfirmConfirmCancelCancel 456456 Confirm (456) AppFabric Order Manager Service ClientConfirm Id = 456 ConfirmConfirmCancelCancel 456456 ConfirmConfirmCancelCancel 456456 ConfirmConfirmCancelCancel 456456 ConfirmConfirmCancelCancel 123123 ConfirmConfirmCancelCancel 789789
18
Demo…
19
IIS Manager AppFabric Hosting Architecture Visual Studio System Centre IIS / WAS App Fabric Tools Runtime Services & Components PersistenceHostingMonitoring ASP.NET WCFETWWF SQL Server MonitoringPersistence PowerShell App Cmdlets
20
Services Going 4ward… WCF – Clean migration path for projects and developer skills – Additional features simplifies configuration and enhances functionality
21
Services Going 4ward… WCF Workflow Services – New implementation of WF – Will not replace traditional service development Evaluate and use where appropriate – Should the service be implemented as a process?
22
Services Going 4ward… Windows Server AppFabric – Great to have for tracing, monitoring and management of traditional WCF services – Must-have for WCF Workflow Services – Distributed in-memory cache features are powerful (formally “Codename Velocity”)
23
Further Development Bits – Visual Studio 2010 RC – Windows Server AppFabric Beta 2 Webcasts – www.CloudCasts.net Questions – bloggersguidetobiztalk@gmail.com User Groups – SweNug has many events planned for 2010 Training – WCF, WF and AppFabric courses at Informator
24
Tack!
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.