Download - Making WCF Simple
![Page 1: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/1.jpg)
![Page 2: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/2.jpg)
Chief Architect, Tellago, Tellago Studios, Inc
![Page 4: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/4.jpg)
![Page 5: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/5.jpg)
![Page 6: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/6.jpg)
![Page 7: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/7.jpg)
![Page 8: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/8.jpg)
![Page 9: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/9.jpg)
Service Versioning
Remove Endpoint-Coupling Between Services and Clients
Managing WCF Configuration
WCF Services Availability
Monitoring Services
Security && Identity Management
![Page 10: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/10.jpg)
![Page 11: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/11.jpg)
![Page 12: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/12.jpg)
Versioning services imposes large degrees of changes on the clients
Multiple versions of the same services might need to be running side by side
Solution: Use WCF Routing Service to abstract the communication across different service versions
Service v1
Routing Service Client
Service v2
![Page 13: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/13.jpg)
![Page 14: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/14.jpg)
![Page 15: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/15.jpg)
Clients are dependent on WCF endpoint changes
High availability requires the deployment of expensive hardware solutions
Solution: Use WS-Discovery to adapt to endpoint changes
Service
Service
Client
WS-Discovery Probe, Match
WS-Discovery Probe, Match
![Page 16: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/16.jpg)
![Page 17: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/17.jpg)
![Page 18: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/18.jpg)
Complexity
Enforcing reusability and consistency across services, clients and environments
Solution: Centralize WCF configuration
Service
Configuration Repository
Client
GET service/config GET client/config
![Page 19: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/19.jpg)
![Page 20: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/20.jpg)
![Page 21: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/21.jpg)
Identifying when a service is available
Avoiding the need for executing service logic
Solution: Implement a Ping Operation Invoker
Service Client
Ping
Ping Operation Invoker
Ping Response
![Page 22: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/22.jpg)
![Page 23: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/23.jpg)
![Page 24: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/24.jpg)
Instrument the message exchange between client and services
Collect near real time metrics about the service runtime behavior
Track the data exchange between clients and services
Solution: Enable and extend service tracking using the Windows Server AppFabric
Service
Client
![Page 25: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/25.jpg)
![Page 26: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/26.jpg)
Security
Identity management
Service dependency modeling
Interoperability
Governance
Testing
![Page 27: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/27.jpg)
Adopting WCF in big SO solutions can introduce some interesting challenges
The extensibility of the WCF programming model together with well established patterns, tools and techniques that can help to address those challenges
Start small, iterate, adopt what makes sense for your organization
![Page 28: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/28.jpg)
Thanks!!!
[email protected] http://tellago.com http://tellagostudios.com http://weblogs.asp.net/gsusx
![Page 29: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/29.jpg)
www.microsoft.com/teched www.microsoft.com/learning
http://microsoft.com/technet http://microsoft.com/msdn
http://northamerica.msteched.com
![Page 30: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/30.jpg)
![Page 31: Making WCF Simple](https://reader034.vdocument.in/reader034/viewer/2022051411/54595af8af79594f558b55b7/html5/thumbnails/31.jpg)