These terms describe concepts and functionality for Microsoft AppFabric 1.1 for Windows Server.




A unit of program behavior in Windows Workflow Foundation. Single activities can be composed together into more complex activities.

activity data

Data generated as part of a business transaction by executing an activity within an application. Activity data is characterized by an exclusive write access pattern.


A Web application that consists of a group of tightly related components such as ASP.NET Web pages, WCF Web services, and workflows that run in a .NET application domain. An application is a unit of deployment, configuration, and management.

arbitration port

A TCP/IP port used by cache hosts to determine whether a cache host in the cluster has become unavailable. The port number used for arbitration can be different on each cache host.


A feature of AppFabric that allows a WCF or WF service to automatically start when it is created, or when IIS is started.


A component that controls various run-time aspects of a service, an endpoint, a particular operation, or a client. Behaviors are grouped according to scope: common behaviors affect all endpoints globally, service behaviors affect only service-related aspects, endpoint behaviors affect only endpoint-related properties, and operation-level behaviors affect particular operations.

behavior extension element

An XML element in a configuration file that allows you to configure a service behavior.

cache client

A .NET application that uses the AppFabric cache client APIs to communicate with and store data to a cache cluster.

cache cluster

A logical group of physical or virtual computers created to store and distribute cache data for the purposes of high scalability and availability. A cluster is an instantiation of the distributed cache service, made up of one or more instances of the cache host service running on individual computers and working together to control data access and replication. Data is stored in memory to minimize response times for data requests. This clustering technology should not be confused with Windows Clustering and does not have a dependency on it.

cache host

A server that runs the Caching Service and participates as a member of a cache cluster.

cache invalidation

Where an object in the cache is flagged so that it is no longer used by any cache clients. This occurs when the copy of the object becomes stale with regard to the copy on the cache cluster.

cache item

An object that is stored in the cache and additional information associated with that object, such as tags and version. It can be extracted from the cache cluster using the GetCacheItem client API.

cache notification

An asynchronous notification that provides automatic invalidation of objects cached in the local cache when their copy on the cache cluster changes. It also allows applications to receive notifications asynchronously when a variety of cache operations occur on the cache cluster.

cache operation

An event that occurs on regions or cached items that can trigger a cache notification.

cache region

A container of data within a named cache that co-locates all its items. It also allows you to search its items using descriptive strings called tags. A region is created by application code dynamically and is not defined in the cluster configuration. All cached items within a region are treated as a single unit in case of failover or load balancing.

cache port

A TCP/IP port used by cache hosts to transmit data to and from the cache clients. The port number used for the cache ports can be different on each cache host. These settings are maintained in the cluster configuration settings.

cache-aside programming pattern

A programming pattern that applies to the design of the caching features of AppFabric. This means that if your data is not present in the cache, your application, not the Caching Service, must reload data into the cache from the original data source.

cache-enabled application

An application that uses an AppFabric cache client to store data in a cache on the cache cluster.


To end the processing of a workflow instance by transitioning the instance to a completed state. The workflow executes cancellation handlers that enable you to perform additional actions such as error handling and compensation.

cluster configuration storage location

Shared location (or shared storage location) where cluster configuration information is persisted. It can be a shared file or a database.

cluster port

A TCP/IP port used by the cache hosts to manage the cache cluster. The port number used for the cluster ports can be different on each cache host. These settings are maintained in the cluster configuration settings.


A task-oriented command that is used in the Windows PowerShell environment.


A group of actions designed to undo or mitigate the effect of previously committed work.

completed state

The state of a workflow instance that has finished processing and accepts no future input, such as messages. A user, when terminating or canceling an instance, completes the workflow.

concurrency model

A way in which applications can be designed to account for concurrent operations that use the same cached data. AppFabric Caching features supports optimistic and pessimistic concurrency models.

configuration file

An XML file with the .config file name extension that contains settings for an application, Web site, or server. Common configuration files include Machine.config and Web.config.

configuration inheritance

The adoption of configuration settings by an object in a hierarchy from an object that is higher in that hierarchy. For example, a service can inherit its configuration settings from the application, Web site, or server with which it is associated.


The process of converting an object from a serial storage format to binary format in the form of an object that applications can use. This happens when the object is retrieved from the cache cluster with the Get client APIs.

durable workflow

A workflow whose state can be persisted to a storage medium to withstand system failures and to release memory, which improves the scalability of workflow execution.


A construct that consists of an address, a binding, and a contract used for communicating with a WCF service.

endpoint address

A uniform resource identifier (URI) that specifies the location of an endpoint. Every endpoint has an address associated with it, which is used to locate and identify the endpoint.

Event Tracing for Windows (ETW)

A general-purpose, high-speed tracing feature of Windows.


The process by which a cached object is physically removed from the memory of the cache host or hosts that it is stored on. This is typically done to keep the memory usage of the cache host service in check.


The point at which an object has exceeded the cache time-out value. When an object expires, it is evicted.

failure notification

A type of cache notification that is triggered when the cache client misses one or more cache notifications.

feature delegation

The process of granting access to feature areas. Access is granted to a particular user at a particular scope. For example, user “Peter” has access to the “Logging” feature at scope ”Default Web Site.”

high availability

A caching feature of AppFabric that supports continuous availability of cached data by storing copies of that data on multiple cache hosts.

high watermark

A memory consumption threshold on each cache host that specifies when objects are evicted out of memory, regardless of whether they have expired, until memory consumption goes back down to the low watermark.


A service must be hosted in some process. A host is an application that controls the lifetime of the service. Services can be self-hosted or managed by an existing hosting process.

hosting process

An application that is designed to host services. These include Internet Information Services (IIS), Windows Process Activation service (WAS), and Windows services. In these hosted scenarios, the host controls the lifetime of the service. For example, using IIS you can set up a virtual directory that contains the service assembly and configuration file. When a message is received, IIS starts the service and controls its lifetime.

IIS Manager

The tool that manages services that are hosted in the Windows Process Activation service (WAS). Previously known as the Web Management Tool.

IIS Manager module

Extensions to IIS Manager. AppFabricextensions to IIS Manager allow you to configure, control, query, and monitor WCF and WF services (in .NET Framework 4).

lead host

A cache host that has been designated to work with other lead hosts and to keep the cluster running at all times.

least recently used (LRU)

The type of eviction used by the cache cluster. Where least recently used objects are evicted before the most recently used objects.

local cache

A feature that enables deserialized copies of cached objects to be saved in the memory of the same process that runs the cache-enabled application.

low watermark

A memory consumption threshold on each cache host that specifies when expired objects are evicted out of memory.

maximum concurrent calls

A configuration setting that represents the maximum number of concurrent calls to service instances that are executing.

maximum concurrent instances

A configuration setting that represents the maximum number of service instances that can be running at the same time in memory.

maximum concurrent sessions

A configuration setting that represents the maximum number of client sessions that can be active at the same time for service instances in memory.

monitoring level

A combination of settings across WCF analytic tracing, workflow tracking, and the Event Collector service that define the amount and types of monitoring information that are collected and stored at a given scope in IIS. AppFabricpredefines five monitoring levels: Off, ErrorsOnly, HealthMonitoring, EndToEndMonitoring, and Troubleshooting.  When you customize these configuration settings to fall outside a predefined level, AppFabricconsiders your level to be “Custom.”

monitoring store

A set of database tables that store information collected from events.


An architectural principle where a single instance of software is used to run a service for multiple clients (tenants).

named cache

A configurable unit of in-memory storage that has policies associated with it and that is available across all cache hosts in a cache cluster.

object lifetime

The span of time a cached object resides in cache and is available to be retrieved by cache clients. The object expires when its lifetime ends. Expired objects cannot be retrieved by cache clients, but remain in memory of the cache host until they are evicted. Specified as time to live (TTL).

optimistic concurrency

A method of using a cached object's version information to manage concurrency. Because every update to an object changes its version number, using version information prevents the update from overwriting someone else’s changes. AppFabric Caching features also supports the pessimistic concurrency model.


An object that contains the files and instructions for distributing software to a distribution point using the Web Deployment Tool (Msdeploy.exe).


Saving the state of a workflow instance or a service to a storage medium, so that it can be unloaded from memory or recovered after a system failure.

persistence provider

A feature in the .NET Framework that saves and restores workflow instances to and from a storage medium.

persistence store

A set of database tables that store workflow instance state and workflow instance metadata.

pessimistic concurrency

A method of managing concurrency by using a lock technique to prevent other clients from updating the same object at the same time. AppFabric Caching features also supports the optimistic concurrency model.


In Windows PowerShell, to send the results of the preceding command as input to the next command in the pipeline.


A series of commands connected by pipeline operators (|) (ASCII 124). Each pipeline operator sends the results of the preceding command as input to the next command.

Caching Administration Windows PowerShell

The management tool for the caching features of AppFabric. With more than 130 standard command-line tools, this new administration-focused scripting language helps you achieve more control and productivity.

reference data

Data characterized by shared read operations and infrequent changes. Examples of reference data include flight schedules and product catalogs. The local cache feature is ideal for storing this type of data.

resource data

Data characterized by shared, concurrently read and written into operations, and accessed by many transactions. Examples of resource data include user accounts and auction items.


To restart the processing of a workflow instance. Resuming a workflow puts it into a running state.

running state

The state of a workflow instance that is currently processing. A user can suspend, terminate, or cancel a running instance.

security principal

The identity and role of a user, acting on the user’s behalf. In Windows-based computers, implemented as an account (such as a user, security group, device, or computer) that can be granted or denied access to resources.


The change that occurs to cached data when it is saved to or updated in the cache cluster. The cached data transforms from a binary-based object that your application uses to a serial storage format.


A program or process that exposes one or more endpoints, with each endpoint exposing one or more operations.

service host

The run-time environment for hosting a service within a process.

session state

An ASP.NET feature used to retain data for unique user sessions while users interact with a Web application. AppFabric offers the ability to store session state from ASP.NET Web applications in the cache cluster.

SQL persistence provider

A persistence provider that is included in the .NET Framework that saves and restores workflow instances to and from a SQL Server database.

strong consistency

A scenario where high availability is enabled and there is more than one copy of a cached object in the cache cluster. All copies of that object remain identical.


To temporarily stop the processing of a workflow instance so that it no longer processes any input, such as messages.

suspended state

The state of a workflow instance that has stopped processing temporarily because of user intervention or a workflow policy. A user can resume, cancel, or terminate a suspended instance.


One or more optional string-based identifiers that can be associated with each cached object stored in a region. Regions allow you to retrieve cached objects based on one or more tags.


To end the processing of a workflow instance by transitioning the instance to a completed state. The workflow is immediately completed.

tracking participant

A software component that consumes tracking records emitted by the Windows Workflow Foundation (WF) runtime. Tracking participant implementations can send records to a storage location such as a log file or a database.

tracking profile

Configuration data that is used to subscribe to specific tracking records that can be emitted by the Windows Workflow Foundation (WF) runtime.

tracking record

Data emitted by the Windows Workflow Foundation (WF) runtime when certain milestones are reached within a workflow instance, for example, when an instance or activity is completed.


A property that is used to differentiate objects stored in the cache using the same key. AppFabric stores the version information using the DataCacheItemVersion class. Every time an object is added or updated in the cache, the version value changes. Versioning is used to maintain data consistency. Optimistic concurrency is achieved by using versioning as opposed to locks.


A threshold used to manage the memory consumption on each cache host. The high watermark and low watermark specify when objects are evicted out of memory.

Windows PowerShell

A task-based command-line shell and scripting language designed especially for system administration.

Windows Process Activation service (WAS)

A service that provides process activation, resource management, and health management services for message-activated applications.


A single activity or tree of activities invoked by a host process.

Workflow Instance Recovery

A feature of the Workflow Management service (WMS) that monitors persistence stores for workflow service instances that should be running and restarts them.

Workflow Management service

A Windows service that manages the execution of instance control commands, the recovery of workflow service hosts, and the resumption of instances in the event of expired timers.

workflow service

A WCF service that is implemented as a workflow. The workflow contains messaging activities that send and receive WCF messages.

XAML activation

The process of activating a workflow instance directly from the XAMLX file that contains the workflow definition rather than from a DLL or by using a configuration file.