About Me

Having 12 years experience in Microsoft technologies.Since more than 7 years working in SharePoint technologies. Expert in providing consultation for SharePoint projects. Hands on with development and administration.

Thursday 16 May 2013

SharePoint 2013 Workflow manager architecture and basic fundamentals

This is my first article in SP 2013. I have chosen workflow framework, becuase MS came up with different architeture & framework to support workflows in SP 2013. And it's very excited concept when I read in msdn or google
 
Workflow framework
 
1. SharePoint 2013 introduces a new, highly scalable workflow framework that is implemented by using the Workflow Manager, originally known as Windows Azure Workflow (WAW). In SharePoint 2013, the Workflow Manager farm is not installed by default. Therefore, a default installation of Share-Point 2013 can only use the same workflows that can be used in SharePoint 2010. When the WorkflowManager is installed, you can run both SharePoint 2010 and SharePoint 2013 workflows.
 
2. There are no enhancements to SharePoint 2010 workflows in SharePoint 2013, you have the same actions and conditions as in SharePoint 2010, and they are built on Microsoft .NET Framework 3.5.The new workflow framework is not designed to work with Microsoft SharePoint Foundation 2013, and therefore with SharePoint Foundation you can only use and create SharePoint 2010 workflows.
 
3.A Workflow Manager farm can be installed on your SharePoint servers or on any servers, however,it is not good practice to install it on domain controllers. With SharePoint 2013, if you are a heavy user of workflows, you should consider creating a Workflow Manager farm separate from your SharePoint farm. Thus, you should install Workflow Manager on one or more servers that do not have SharePoint installed. However, be aware that SharePoint 2010 workflows will still run on your SharePoint 2013 servers in the legacy SharePoint workflow engine, also known as the SharePoint 2010 workflow host.

4. Only SharePoint 2013 workflows can make use of the Workflow Manager farm. Within SharePoint 2013 workflows, only those activities built on .NET Framework 4.5 and Windows Workflow Foundation 4 run within Workflow Manager. When a SharePoint 2013 workflow needs to use any Windows Workflow Foundation 3 artifacts, control is passed back to the SharePoint 2010 workflow host in SharePoint 2013. When the SharePoint Windows Workflow Foundation 3 process is complete, control returns to Workflow Manager.
 
Workflow Manager architecture
 
 
The Workflow farm consists of two components: the Workflow Manager and a service bus that facilitates the communication among components within the farm by using the Open Authentication (OAuth protocol). The service bus is a messaging platform that has been running in Azure for some time that now can run on on-premises servers. The Workflow Manager uses the service bus as its core state management and messaging layer. All communication between SharePoint and the Workflow Manager is message based using a well-defined contract for events and management operations happening from SharePoint into the Workflow Manager using a series of Representational State Transfer (REST) HTTP calls. Therefore, the service bus is used for reliable message delivery and a message broker that also keeps the message state and workflow instance state consistent.
 
SharePoint 2013 contains a new component known as the Workflow Services Manager, which is the integration layer between SharePoint and the Workflow Manager. The Workflow Services Manager connects to other SharePoint services by using the Workflow Service Application Proxy and connects to the Workflow Manager via the Workflow Manager Client. You can install the Workflow Manager on the same servers as SharePoint, in which case the Workflow Manager Client is automatically installed as part of the Workflow Manager installation, known as the colocated model. You can also install Workflow Manager on servers that do not have SharePoint installed—the federated model—in which case you will need to install separately the Workflow Manager Client on SharePoint servers that are responding to web requests, so that they can communicate with the Workflow Manager. Youcan build a federated workflow farm to achieve high availability by joining three servers to the farm because they work like a mirror with a witness; that is, the servers need to achieve a quorum (you cando this with just two servers).
 
The Workflow Services Manager contains a number of services:
 
Deployment This service manages workflow definitions. This is the service that deploys workflows you create in SharePoint Designer when you click the Publish command or when in the browser you associate a workflow template in the browser with SharePoint components,such as lists, libraries, content types, and sites.
 
Messaging This service takes events, such as when properties of a document change, and sends them as messages to the Workflow Manager. This Messaging service is also exposed to Apps. This makes it possible for Apps to have custom messages; for example, you can define a custom message from an external application that can be sent to a workflow and you can have a workflow that subscribes to that message.
 
Instance This service manages workflow instances. Therefore, it is this service that is used to obtain workflow instance status information, or if you wish to terminate a workflow instance.
 
Interop This service invokes SharePoint 2010 workflows.
 
All communications with the workflow farm uses either the HTTP or HTTPS protocol. On servers within the workflow farm, within Internet Information Server (IIS) Manager, you will see one application pool, WorkflowMgmtPool, and one site, Workflow Management Site.
 
A Workflow Manager server also contains the following four Windows NT services:

-Workflow Manager Backend
-Service Bus Message Broker
-Service Bus Gateway
-Windows Fabric Host Service
When a workflow farm is created, six databases are created on an SQL Server:

Workflow databases:
-WFManagementDB
-WFInstanceManagementDB
-WFResourceManagemetDB
 
-Service bus databases:
SBManagementDB
SbGatewayDatabase
SBMessageContainer01
 
The Workflow Manager farm provides no native support for high availability at the storage layer.You can use your own solution, such as SQL Server mirroring. 
 
Hope this helps you to understand basic idea of how workflow foundation works in SP 2013. In the coming article I will show you how to install workflow manager farm.

 
 
 


 

1 comment:

  1. Quite helpful. Thanks. I have just signed up for a free SharePoint 2013 site with http://www.cloudappsportal.com.

    ReplyDelete