Windows Communications Foundation ("Indigo"): Developing Manageable Web Services Alex Weinert COM308R Lead Program Manager Windows Communication Foundation.

Slides:



Advertisements
Similar presentations
Your Data Any Place, Any Time Manageability. SQL Server 2008 Manageability Challenges Challenges face database administrators today : Managing complex.
Advertisements

Faith Allington Program Manager Microsoft Corporation WSV322.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Lap Around IIS7 Bill Staples Product Unit Manager, IIS COM014 – A Lap Around IIS7 Microsoft Corporation xxx Roller Coaster Ride.
IIS7: Building New Core Server Modules Michael Volodarsky COM406 Program Manager Microsoft Corporation.
The Microsoft Technical Roadshow 2006 Windows Communication Foundation Mike Taulty Developer & Platform Group Microsoft Ltd
DEV450 Visual Studio: Best Practices For Debugging Managed Applications Habib Heydarian Scott Nonnenberg Program Managers Microsoft Corporation.
Tech·Ed North America /19/2017 7:21 AM
IIS 7: The Next Generation Web Application Server Platform Michael Volodarsky Program Manager Web Platform and Tools Team Microsoft Corporation.
Created by the Community for the Community Building a RFID solution in BTS 09.
Microsoft Office Project 2003 Resource Kits James Scott & Roy Riley Technical Content Development Microsoft Corporation.
Connect with life Praveen Srvatsa Director | AsthraSoft Consulting Microsoft Regional Director, Bangalore Microsoft MVP, ASP.NET.
Future Directions for Leveraging Advanced XML Tools and Building Custom XML Solutions Denise Draper DAT321 Microsoft Corporation.
Microsoft ® Official Course Monitoring and Troubleshooting Custom SharePoint Solutions SharePoint Practice Microsoft SharePoint 2013.
WEB329 ASP.NET: A Lap Around the New Enhancements for Web Developers in Microsoft Visual Studio 2005 Omar Khan Lead Program Manager Web Platform and Tools.
Case Study: Revolutionizing Microsoft Axapta Mike Ehrenberg COML01 Architect, Microsoft Business Solutions Microsoft Corporation.
1 Developing Rules Driven Workflows in Windows Workflow Foundation Jurgen Willis COM318 Program Manager Microsoft Corporation.
Ch 11 Managing System Reliability and Availability 1.
CON 307 Developing Manageable WCF Services Chris Peiris | Avanade Rory Primrose | Avanade
WELCOME!. Web Administration Summit 2006 Learn to optimize your Web Platform from the experts who built it Featuring Chris Adams & Wade Hilmo.
Module 8 Configuring and Securing SharePoint Services and Service Applications.
Future Directions: Building Customizable Applications using.NET Eric Schnepp TLN205 Lead Program Manager Microsoft Corporation.
Datacenter X Datacenter Y ….com Contoso.com Exchange Labs ACME.com Ops NK App user Finance HR Sales Purchase Fabrikam Enterprises.
Conditions and Terms of Use
1 Windows Communication Foundation: Integrating COM+ and MSMQ Applications Andy Milligan COM305 Program Manager Microsoft Corporation.
Future of the Server Room Tour. Ottawa Montreal Calgary Vancouver Toronto Future of Your Server Room Three Pillars of Windows Server 2008 Virtualization.
A Deep Dive into Best Practices with the Windows Communication Foundation John Justice COM415 Program Manager Microsoft Corporation.
Reset and Recycle IIS Reset Application Pool Management Error Codes New HTTP Sub-status codes Custom/Detailed Errors Tracing in IIS7 and.
Mahesh Krishnan, Senior Consultant, Readify Slide 1.
DEV333 Instrumenting Applications for Manageability with the Enterprise Instrumentation Framework David Keogh Program Manager Visual Studio Enterprise.
“ WinFS” Future Directions: Building Data-Centric Applications Using Windows Presentation Foundation “Avalon” and Windows Forms Ramesh Nagarajan DAT310.
Windows Role-Based Access Control Longhorn Update
This is the main tracing and diagnostics presentation. Very important that this be practical and useful information. IT Pro audience is very.
Under New Management Andrew Fryer Microsoft UK Andrew Fryer Microsoft UK.
Lap Around Windows Presentation Foundation Rob Relyea PRS305 Lead Program Manager Windows Presentation Foundation
MSG331 Exchange Server 2000/2003 Software Development Kit Susan Hill Lead Programmer Writer Microsoft Corporation.
What’s New in Windows Forms 2.0 Stephen Turner Software Design Engineer
DEV332 Programming for the Middle Tier in Visual Basic.NET Billy Hollis Author / Consultant.
Ellis Paul Technical Solution Specialist – System Center Microsoft UK Operations Manager Overview.
MSG 334 Creating Exchange Administrative Scripting for the Non-Programmer Susan Hill Lead Programmer Writer Microsoft Corporation.
Module 14: Advanced Topics and Troubleshooting. Microsoft ® Windows ® Small Business Server (SBS) 2008 Management Console (Advanced Mode) Managing Windows.
Windows Communications Foundation ("Indigo"): Writing Secure Distributed Applications Martin Gudgin COM312 Program Manager Microsoft Corporation.
Ken Casada Developer Evangelist Microsoft Switzerland Découvrez le Visual Studio.
Ken Casada Developer Evangelist Microsoft Switzerland Visual Studio LightSwitch.
The best of WF 4.0 and AppFabric Damir Dobric MVP-Connected System Developer Microsoft Connected System Division Advisor Visual Studio Inner Circle member.
Building More Powerful ASP.NET Applications with IIS7 Michael Volodarsky COM303 Program Manager Microsoft Corporation.
Mikael Deurell Senior Consultant Microsoft Mail: Blog: blogs.msdn.com/deurell.
Mike Harsh PRSL001 Program Manager Microsoft Corporation
Gain visibility into your apps with Azure Application Insights
Modern Application Lifecycle Management
Jim Nakashima Program Manager – Cloud Tools Microsoft Corporation
Microsoft Ignite /22/2018 3:27 PM BRK2121
WCF (Indigo): Under the Hood of the Channel Layer
Debugging and troubleshooting Azure applications using Visual Studio
Reaching more customers with accessible Metro style apps using HTML5
Microsoft Build /8/2018 5:15 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
11/12/2018 6:58 PM © 2004 Microsoft Corporation. All rights reserved.
Developer Patterns to Integrate Silverlight 4.0 with SharePoint 2010
Security in a Container based World
Building responsive apps and sites with HTML5 web workers
Intro to Workflow Services and Windows Server AppFabric
DAT381 Team Development with SQL Server 2005
TechEd /3/ :48 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Delivering great hardware solutions for Windows
Andrew Fryer Microsoft UK
Office 365 Development July 2014.
Making Windows Azure Relevant to IT Professionals
9/8/ :03 PM © 2006 Microsoft Corporation. All rights reserved.
利用IIS部署與維護 SOA應用程式的技巧
Presentation transcript:

Windows Communications Foundation ("Indigo"): Developing Manageable Web Services Alex Weinert COM308R Lead Program Manager Windows Communication Foundation Microsoft Corporation

2 About This Talk Manageability principles Built in WCF Management Features How you can make your WCF services more manageable

3 App Code App Code Energy And Entropy App Code Admin View Admin View Admin View End-user: values UNIQUENESS Administrator: values SIMILARITY User View User View User View Management features are a way to present a homogenous view of things in a heterogeneous environment App logic contributes to both user view and admin view.

4 TheHard/Long(useful)Part TheFun/ShortPart The Life And Times… HUMANConceptualizationConceptionBirthChildhood Teen Angst Productive Years The Golden Years SOFTWARE Design/Arch Development Deployment Configuration Troubleshooting Monitoring Reconfiguration

5 WCF What WE do for IT pros Configuration system which allows post-deployment tuning and control of many aspects of service Tracing sources provide traces for service internals, logged messages, activities Performance counters for key operation, security, reliability, transaction statistics WMI Provider allows scriptable query support for all aspects of running services Windows Event Log helps with diagnosis of deployment problems Configuration Editor and Trace Viewer in the SDK simplify common IT Pro tasks

(With the kind permission of St. Martin’s Press) Demo Scenario: Dan Brown’s Digital Fortress

7 Digital Fortress Cmdr. Strathmore administers TRANSLTR … a billion-$ govt. computer to decrypt any code. Then someone invents Digital Fortress: an encryption algorithm that can’t be broken. Strathmore conspires to hide his dilemma … But the IT Pros see something is wrong with TRANSLTR. So, the conspiracy is exposed by the management interfaces.

8 Digital Fortress Node 3 – User Interface NSA Data: Façade Service Data Bank: Storage Gauntlet: Virus Detection TRANSLTR: Decryption

WCF Management Features

10 Tools Cheat Sheet You’ll find the tools in “\Program Files\Microsoft SDKs\WinFX\bin” Trace Viewer: SvcTraceViewer Configuration Editor: SvcConfigEditor You must override strong name validation to use the svcConfigEditor. From a command prompt type: “sn –Vr svcConfigEditor.exe”

11 The Challenge We are putting basic instrumentation, control mechanisms, diagnostics “in the box” with WCF Much of what you’ve had to code in the past is now done for you in the framework You’ll get manageable Web Services with WCF even if you don’t code for manageability You can raise the bar for manageability! Now that you don’t need to write timer code to determine latency, throughput, error rates… What can you do with that same investment?

12 What YOU Do For IT Pros Management interfaces expose key insights and controls on your service Traces assist diagnostics and supportability of your application Counters measure what matters for your service WMI objects provide scriptable query support for your management objects UI presents an IT experience for your application

13 Use The Configuration System! What goes in code Business logic Instancing, concurrency, autoenlist/complete What goes in config EndpointsBindingsBehaviorsClientsDiagnostics

14 Adding A Management Service Interface Why: Inspection, Control What: IManageFoo – Management interface gives key data, control access into the app How: Add another contract, make it a [ServiceContract] [ServiceContract] interface MyAdminContract{ public void UpdateConfiguration(void); public void UpdateConfiguration(void);} public class MyService:MyContract, MyAdminContract { …}

Walkthrough Adding a Management Interface

16 Adding Traces Why: Diagnostics, Supportability. What: Key milestones in processing, detailed data at different levels How: Create a trace source, use it to emit traces. using System.Diagnostics; public class MyService:MyContract, MyAdminContract { public void DoSomething(){ public void DoSomething(){ TraceSource mySource = new TraceSource(“MyService”); TraceSource mySource = new TraceSource(“MyService”); mySource.TraceInformation(“I am doing something.”); mySource.TraceInformation(“I am doing something.”); }}

Walkthrough Adding custom traces

18 Adding Counters Why: Monitoring, Trending What: Key business level metrics, trends How: Create a perf counter, create an instance with appropriate name, use it. Hint: Consider instance lifetime when creating counters! using System.Diagnostics; PerformanceCounterCategory category = PerformanceCounterCategory.Create( PerformanceCounterCategory.Create( "MyCategory", "MyDesc", "MyCategory", "MyDesc", PerformanceCounterCategoryType.MultiInstance, PerformanceCounterCategoryType.MultiInstance, "MyCounter", "MyCtrDesc"); "MyCounter", "MyCtrDesc"); PerformanceCounter counter = new PerformanceCounter( "MyCategory", "MyCounter", "InstanceName", false); "MyCategory", "MyCounter", "InstanceName", false);counter.Increment();

Walkthrough Adding counters

20 Adding WMI Objects Why: Monitoring, Scripting What: Internals of your app How: Create a class, attribute it, instance it, register it using System.Management.Instrumentation; [InstrumentationClass(InstrumentationType.Instance)] public class AdminInfo {public string importantStuff;} public class myService:myInterface { public myService(){ public myService(){ info = new AdminInfo(); info = new AdminInfo(); Instrumentation.Publish(info); Instrumentation.Publish(info); } protected AdminInfo info; } protected AdminInfo info; }

Walkthrough Creating a WMI object

22 Building Management UI Why: Dashboard for your app. What: One stop shopping. How: Use System.Diagnostics and Systems.Management client APIs Hint: In Server, everything I’ve shown you from WMI is available via WS- Management

Walkthrough Building Management UI

24 Summary WCF Apps are manageable out of the box Deployment flexibility SLA monitoring End to end diagnostics You can make them even better Create Management Endpoints Add instrumentation Build custom UI for admins

25 Community Resources At PDC For more information, go see COM307 - Windows Communications Foundation ("Indigo"): Writing Reliable and Transacted Distributed Applications (Wed 3:15pm) COM320 - IIS 7: Instrumenting, Diagnosing, and Debugging Web Applications (Thu 11:30am) FUN316 - Windows Vista & "Longhorn" Server: Publishing and Consuming Events (Thu 2:15pm) Labs: COMHOL25 – Management Ask The Experts table: WCF Product Pavilion: I’ll be there Thu 9:00am-12:00pm COM Track lounge: I’ll be there Thu 12:30-3:30pm After PDC MSDN dev center: Channel 9 tag: Contact me: microsoft.com

Questions?

27 Use the PDC Management Tool!!! namespace PDC { //Fill out your evaluation for a copy of Digital Fortress [ServiceContract(Session=true)] public interface IEvaluation { [OperationContract] DigitalFortressNovel Submit(Evaluation yourEvaluation); }

© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.