Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Applied Architecture Patterns on the Microsoft Platform
Applied Architecture Patterns on the Microsoft Platform

Applied Architecture Patterns on the Microsoft Platform: An in-depth scenario-driven approach to architecting systems using Microsoft technologies

eBook
NZ$53.99 NZ$77.99
Paperback
NZ$96.99
Subscription
Free Trial

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Applied Architecture Patterns on the Microsoft Platform

Chapter 2. Windows Communication Foundation and Windows Workflow 4.0 Primer

Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) were first introduced with the release of the .NET Framework 3.0 in November 2006. The goal of WCF was to introduce a framework that aids in building distributed applications that leverages web services, MSMQ interfaces, and remoting with a consistent, service-oriented, communication platform. This platform abstracts the communication details (including transport, encoding, encryption, and authentication) from implementation logic. Because of this abstraction, we can often modify service behavior through configuration changes without impacting existing logic or compiled code. WCF controls WS-* implementation, distributed transactions, security, and serialization in a manageable fashion, and in a way that is relatively consistent across service platforms. With Windows Workflow, the concept of designer-based workflow was brought to the mass...

What does this technology do?


While the common goal of WCF and WF was to provide a starting framework for developers working on custom solutions, the specific implementation scenarios for each are very different.

Distributed systems have distinct problems. Distributed, by definition means spread-out; in a programming sense distributed means spread-out but also cross system and even cross platform. Distributed systems are different from typical standalone applications in that they need to interact with other systems in order to function. This brings new challenges including: how these systems communicate, how security is enforced, and what happens if the system is down, just to name a few. The goal of Windows Communication Foundation is to simplify this process. WCF is just that, a foundation for communication, typically for distributed systems. The goal is to provide a configuration-based approach for systems to communicate with each other under a common framework, which once learned, will...

Highlights of the latest release


With significant investments made in the area of workflow, the following impressive changes outlined were drastically needed to increase adoption. If you have looked at Workflow in the past, the .NET 4.0 Workflow release bears little resemblance to past releases. With dramatic change comes the obvious pitfall of backward compatibility.

Windows Communication Foundation enhancements

The following enhancements are made to WCF in the .NET 4.0 release:

  • Easier configuration: Developers do not like to spend time learning and setting up configuration. In WCF 4.0, default values can be set allowing services to be run without any service-specific confirmation files.

  • Content-based routing service: WCF now has the ability to route inbound requests though information in the SOAP header or actual data inside the message, based on an XPath expression. In addition to this basic routing, error handling has the ability to send requests to alternative destinations in the...

Typical use cases


Windows Communication Foundation and Windows Workflow Foundation follow different use case scenarios, but both share the fact that they are frameworks. Both WCF and Workflow are used as part of a custom-built solution. While some third-party vendors leverage and re-host these technologies, the use cases outlined here assume that these technologies are going to be used as the foundation of a new application. Use cases fit into one of these three categories: WCF, WF, and WF Services.

Windows Communication Foundation use cases

Windows Communication Foundation is striving to become the implementation framework of choice for distributed service-based scenarios. Examples include a company implementing a company-wide Service-Oriented Architecture (SOA) to offer enterprise services for tasks such as tax calculations, shipping quotes, or inventory checks. Using WCF is about approaching different distributed scenarios in a standardized way, increasing supportability, maintainability...

Example solution


To get you up and running with workflow services, let's set up a simple example. This will be a Windows Workflow that is exposed as a WCF service. This example will use Visual Studio to host the workflow and expose WCF endpoints. The service will accept a simple string and return an updated string.

  1. 1. Create the new project inside Visual Studio 2010.

    • Go to File | New Project.

    • Select Workflow on the tab on the right under Visual C#.

    • Select the WCF Workflow Service Application project type.

    • Name it to IntroToWFService.

    • Click on OK.

  1. 2. Create local variables to store the inbound text and set the outbound text of the service.

    • Click on the Sequence shape to ensure it is the active window.

    • Click on the Variables tab on the bottom left.

    • Add a variable named InternalInputText of type String to store the original inbound text.

    • Add a variable named InternalOutputText of type String to create the response string to be returned from the service.

  1. 3. Define the Request and Response Contract because...

Summary


In this chapter, we took a look at the ABCs of WCF along with some basics of WCF and Workflow. We briefly reviewed the new features in WCF and Workflow that are available in the .NET 4.0 release. Lastly, we saw a workflow service in action in a simple request-response scenario. Further chapters will explore the hosting of WCF and workflow solutions, and dive deeper into the best use scenarios of these frameworks.

Left arrow icon Right arrow icon

Key benefits

  • Provides an architectural methodology for choosing Microsoft application platform technologies to meet the requirements of your solution
  • Examines new technologies such as Windows Server AppFabric, StreamInsight, and Windows Azure Platform and provides examples of how they can be used in real-world solutions
  • Considers solutions for messaging, workflow, data processing, and performance scenarios
  • Written by a distinguished team of specialists in the Microsoft space

Description

Every day, architects and developers are asked to solve specific business problems in the most efficient way possible using a broad range of technologies. Packed with real-world examples of how to use the latest Microsoft technologies, this book tackles over a dozen specific use case patterns and provides an applied implementation with supporting code downloads for every chapter. In this book, we guide you through thirteen architectural patterns and provide detailed code samples for the following technologies: Windows Server AppFabric, Windows Azure Platform AppFabric, SQL Server (including Integration Services, Service Broker, and StreamInsight), BizTalk Server, Windows Communication Foundation (WCF), and Windows Workflow Foundation (WF). This book brings together – and simplifies – the information and methodology you need to make the right architectural decisions and use a broad range of the Microsoft platform to meet your requirements. Throughout the book, we will follow a consistent architectural decision framework which considers key business, organizational, and technology factors. The book is broken up into four sections. First, we define the techniques and methodologies used to make architectural decisions throughout the book. In Part I, we provide a set of primers designed to get you up to speed with each of the technologies demonstrated in the book. Part II looks at messaging patterns and includes use cases which highlight content-based routing, workflow, publish/subscribe, and distributed messaging. Part III digs into data processing patterns and looks at bulk data processing, complex events, multi-master synchronization, and more. Finally, Part IV covers performance-related patterns including low latency, failover to the cloud, and reference data caching.

Who is this book for?

This book is for architects, developers, and managers who need to improve their knowledge of the Microsoft application platform. This book will appeal to anyone who wants to get up to speed on selecting the most appropriate platform for a particular problem. Consultants and executive leadership will also find significant value in this book. A good understanding of the general Windows platform and development technologies would be helpful.

What you will learn

  • How to organize your evaluation of candidate solutions to a given business problem
  • Review the new features in WCF and Workflow that are available in .NET 4.0
  • Explore the hosting of WCF and Workflow solutions in Windows Server AppFabric and dive deeper into the best usage scenarios for these frameworks
  • Look at the core components and compelling aspects of BizTalk Server 2010
  • See where to use the data movement, master data management and data governance of SQL Server Integration Services, Microsoft Sync Framework, and SQL Server Service Broker
  • How to determine when to use BizTalk Server versus Windows Workflow for workflow applications and BizTalk Server versus SQL Server when sharing data
  • Walk through developing your first Windows Azure Platform AppFabric, and SQL Azure applications and get an overview of each of the components of the Windows Azure Platform
  • Construct high volume event processing solutions using the new StreamInsight engine included with SQL Server 2008
  • Discover the value of distributed cache and how to build solutions using the new Caching Framework built into Windows Server AppFabric

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Sep 07, 2010
Length: 544 pages
Edition : 1st
Language : English
ISBN-13 : 9781849680547
Vendor :
Microsoft
Category :

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : Sep 07, 2010
Length: 544 pages
Edition : 1st
Language : English
ISBN-13 : 9781849680547
Vendor :
Microsoft
Category :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just NZ$7 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just NZ$7 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total NZ$ 258.97
Microsoft Windows Azure Development Cookbook
NZ$80.99
Microsoft Windows Communication Foundation 4.0 Cookbook for Developing SOA Applications
NZ$80.99
Applied Architecture Patterns on the Microsoft Platform
NZ$96.99
Total NZ$ 258.97 Stars icon

Table of Contents

20 Chapters
Solution Decision Framework Chevron down icon Chevron up icon
Windows Communication Foundation and Windows Workflow 4.0 Primer Chevron down icon Chevron up icon
Windows Server AppFabric Primer Chevron down icon Chevron up icon
BizTalk Server Primer Chevron down icon Chevron up icon
SQL Server and Data Integration Tools Primer Chevron down icon Chevron up icon
Windows Azure Platform Primer Chevron down icon Chevron up icon
Simple Workflow Chevron down icon Chevron up icon
Content-based Routing Chevron down icon Chevron up icon
Publish-Subscribe Chevron down icon Chevron up icon
Repair/Resubmit with Human Workflow Chevron down icon Chevron up icon
Remote Message Broadcasting Chevron down icon Chevron up icon
Debatching Bulk Data Chevron down icon Chevron up icon
Complex Event Processing Chevron down icon Chevron up icon
Cross-Organizational Supply Chain Chevron down icon Chevron up icon
Multiple Master Synchronization Chevron down icon Chevron up icon
Rapid Flexible Scalability Chevron down icon Chevron up icon
Low-Latency Request-Reply Chevron down icon Chevron up icon
Handling Large Session and Reference Data Chevron down icon Chevron up icon
Website Load Burst and Failover Chevron down icon Chevron up icon
Wrap Up Chevron down icon Chevron up icon

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Full star icon Half star icon 4.5
(10 Ratings)
5 star 70%
4 star 20%
3 star 0%
2 star 10%
1 star 0%
Filter icon Filter
Top Reviews

Filter reviews by




T. A. Nov 10, 2010
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I believe any self-respecting architect in the application platform space needs to read that book. The real value of the book to me was how it presents a way of applying the Microsoft application platform technology stack to the decision framework.The content is not available on any other book that cover the app plat technology stack. By taking an approach of `given this scenario with these real life considerations this is how I would you build the solution' it shows the author's thought process which sometimes is the hardest part of a project.
Amazon Verified review Amazon
Rohit Sharma Dec 29, 2010
Full star icon Full star icon Full star icon Full star icon Full star icon 5
What can I say about person like Stephen W Thomas, he is already a well known tech guru and this book is a good work done by all these well known tech experts.The first chapter talks about the decision framework for solution which describes the factor one need to think about while creating a solution and the next few chapters are premier on technologies like WCF,WF,AppFabric,BizTalk,SSIS,SSSB and Windows Azure.The think that I most like about this book is that it contains useful patterns and the authors have done a very good job of evaluating different technologies using the decision framework for implementing these, which give you a clear idea which technology to use when. Another plus point about this book is that you get the chance to implement these patterns using these different technologies and I prefer to do hands-on instead of just reading.
Amazon Verified review Amazon
B. Eaton May 09, 2012
Full star icon Full star icon Full star icon Full star icon Full star icon 5
As a developer who has become an architect-by-accident, I picked this up to make sure my knowledge of Microsoft technologies was up-to-date and complete (which BizTalk aside it was). But it's also full of useful guidance about the architectural process which is illustrated with some very well thought-out case studies.It has certainly helped me to re-think my approach to using the Microsoft stack as well as evaluating my rationale for selecting technologies and architectures. A thoroughly informative read.
Amazon Verified review Amazon
James McKee Dec 10, 2010
Full star icon Full star icon Full star icon Full star icon Full star icon 5
When I found out that Stephen Thomas was writing a book about the upcoming technologies with some of the experts in these technologies, I immediately thought to myself I need to read this book. So after getting my hands on a copy of Applied Architecture Patterns on the Microsoft Platform I found myself with both some interesting reading material as well as a crash course on some of the architectural designs for upcoming and current Microsoft technology.To start off I make my living as a software consultant and I pride myself on my knowledge of many areas of technology, currently in the Microsoft stack. Because of this I think my view of the book has been slightly skewed, to further complicate things I also view myself as an early adopter oftentimes tinkering with the latest CTP of the developer tools for various new products.The book starts by going across the architectural overview that attempts to set down the parameters for what the rest of the book is built against. This section of the book is reserved for the youngest among the developer an architect crowd, and I would imagine would be the most skipped out of all the chapters.The next section of the book deals with primers for each of the different technologies that they are working with including windows communication foundation and workflow foundation, app fabric, biz talk, SQL server (SSIS and SSSB) , and windows azure. These particular chapters I found to be of little help, simply because I keep up with many of the technologies. However if you are walking into a situation where you know nothing about these technologies, then you might find the primer chapters useful.The next section of the book consists of problems that were picked so that they would meet the needs of the examples. But while this is not an uncommon practice in the realm of technology education literature, it is slightly frustrating and let me to wonder exactly how well these technologies would perform under real-world circumstances. The most informative part of the sections includes the side by side comparison of multiple solutions and the bare information provided to develop quick skills with the particular technologies. In many cases I think the book would be useful in the instance that you needed to have a crash course on one of the technologies that was presented.On the other hand there are some chapters in the book that deal with very specific instances of solving real issues that occur when working with the toolset. At least one of the chapters in the book deals specifically with an issue that I have encountered before and stepping through the pages for that particular chapter were in many ways like reliving that assignment complete with the solution.But in the end I don't think most people will read the book the same way I did from cover to cover, and it may not be a great reference for someone looking to update their skills in a particular area. However if you have been out of touch with the latest offerings from the Microsoft stack for more than two years you may find this book extremely helpful as it gives step by step instructions that will act as an introduction too much broader discussions.In the end the book is a blend of content ranging from very specific instances that function more like a recipe than a tutorial to broad overviews of the technology. I think that there is a little something for all architects and developers to pull out from this book, and the format allows you to pull out a specific portion of knowledge and digest it without having to go through the entire book. In this way it represents more of a collection of loosely connected detailed articles than a tome of technical knowledge. In the end I was not upset with the amount of time spent reading the materials. I think much of the information that I gained I will be able to put to good use.
Amazon Verified review Amazon
Petitebean Feb 04, 2011
Full star icon Full star icon Full star icon Full star icon Full star icon 5
This book covers different architectural perspectives, and provides a nice overview on the latest shipping technologies on the Microsoft enterprise platform including WCF/WF 4.0, Windows Server AppFabric (which is one of the most interesting things on the Microsoft platform today IMO, including the Windows Azure AppFabric), BizTalk Server, SQL Server and StreamInsight, and Windows Azure platform. It then goes into more detail around various types of application and data integration patterns (and at different levels; not just messaging patterns), and discusses the trade-offs and best practices for the multiple solutions that can be used to apply each pattern, and scenarios.It's not another one of those "what's possible with cloud computing" books. The authors took a pragmatic approach to identify and describe today's real-world architectural issues and patterns, from simple workflows, the requisite pub-sub, content-based routing, message broadcasting, etc., to complex event processing, master data synchronization, handling large data and burst Web traffic; and provided architectural considerations (including on-premises and cloud-based models) and options on how these commonly encountered patterns can be implemented with the components of the Microsoft enterprise platform.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.