Windows Azure AppFabric is a platform that provides middleware services for developing and managing cloud applications at scale. It includes services for messaging, caching, identity management, and integrating applications. It also allows building and managing composite applications composed of distributed application components hosted on Windows Azure. The AppFabric platform aims to simplify cloud development by providing these services and capabilities through a consistent programming model.
Windows Azure AppFabricAppFabricServicesServiceBusAccessControlCompositeAppCachingIntegration.NET CompositionManagementAppFabric ContainerMulti-tenant, high-density, scaled-out hostComposition runtimeMiddleware ServicesMiddleware Services are platform capabilities as services, which raise the level of abstraction and reduce complexity of cloud development.Composite ApplicationsNew innovative frameworks, tools & composition engine to easily assemble, deploy & manage a composite app as a single entityScalable Application InfrastructureCloud-scale optimized infrastructure for services & mid-tier componentsSQL ServerSQL AzureWindows AzureWindows Server
5.
AppFabric “Middleware” ServicesAppFabricServicesServiceBusAccessControlCompositeAppCachingIntegrationOpen & interoperable platform capabilities offered as services, which raise the level of abstraction and reduce complexity of cloud developmentService Bussecure connectivity and messagingAccess Controlidentity management and access controlCachingin-memory application cacheIntegrationcommon integration capabilities, Business Activity Monitoring and Rules, self-service trading partner community portal and provisioning of business-to-business pipelinesComposite Appautomate the deployment and management of composite applications as a single logical entity and hosting web services and workflows
6.
AppFabric Service BusTheService Bus provides secure messaging and connectivity capabilities that enable building distributed and disconnected applications in the cloud, as well hybrid application across both on-premise and the cloud. It enables using various communication and messaging protocols and patterns, and saves the need for the developer to worry about delivery assurance, reliable messaging and scale.Expose RESTful or SOAP services over the internet through firewall and NAT boundariesCommunicate bi-directionally between apps and services in an interoperable mannerChoose relays, queues, routers, and other message patterns and typesScale out naturally and reliably as apps and services grow
7.
AppFabric Service BusCoreCapabilitiesService location and discoverySimple registryAccess via lightweight ATOM protocols from any platformEndpoint naming and discoveryCloud based messaging relayAllows bridging across NATs and FirewallsConnect apps without altering the network topologyNetwork Listen/Send from any Internet-connected deviceStandards based HTTP or High Performance TCPDirect connection functionality using NAT probing
8.
AppFabric Service BusServiceRemoting PatternAccess ControlService BusSenderListenerAccess Web Services across the Internet
9.
Publish services andcommunicate bi-directionallyAppFabric Service BusService Eventing PatternAccess ControlService BusListenerSenderNotify remote parties of events
AppFabric Service BusTunnelingPatternAccess ControlProtocol BridgeProtocol BridgeService BusSenderListenerTransport existing protocolsAppFabric Access ControlAccess Control provides an easy way to provide identity and access control to web applications and services, while integrating with standards-based identity providers, including enterprise directories such as Active Directory®, and web identities such as Windows Live ID, Google, Yahoo! and Facebook.Federated identity and access control through rule based authorization enables applications to respond as if the user accounts were managed locallyFlexible standards-based service that supports multiple credentials and relying partiesLightweight developer-friendly programming model based on the Microsoft .NET Framework and Windows Communication Foundation
13.
AppFabric Access ControlFeaturesIntegrateswith Windows Identity Foundation and toolingClaims-based access controlSupport for OAuth WRAP, WS-Trust, and WS-Federation protocolsSupport for the SAML 1.1, SAML 2.0, and Simple Web Token token formatsIntegrated and customizable Home Realm DiscoveryOData-based Management Service to ACS configurationSetup Issuer trust with a simple Web interface or programmatically through APIs Supports Active Directory and other identity infrastructures
14.
AppFabric Access ControlWebsite scenarioClientIdentity ProviderAccess ControlRelying Party1. Request Resource2. Redirect to Identity Provider3. Login4. Authenticate & Issue Token5. Redirect to AC service7. Validate Token, Run Rules Engine, Issue Token 6. Send Token to ACS8. Redirect to RP with ACS Token10. Validate Token9. Send ACS Token to Relying Party11. Return resource representation
15.
AppFabric CachingCaching providesa distributed, in-memory, application cache service for Windows Azure and SQL Azure applications. It provides applications with high-speed access, scale, and high availability, to application data. These capabilities are provided entirely as a service (no installation or management of instances, dynamically increase/decrease cache size as needed).Highly scalable caching solution with low latency and high throughputProvided entirely as a service - no installation or management of instances required Flexible management - dynamically increase/decrease cache size as neededIntegrates easily with existing ASP.NET web applications
AppFabric CachingFeaturesASP.NET providersfor session state and page output cachingExtremely low latencies with the local cacheCache any managed objectNo object size limitsNo serialization costs for local cachingEasily integrates into existing applicationsSecured by the Access Control serviceLoad BalancerAppAppAppAppAppLocal CacheLocal CacheLocal CacheLocal CacheLocal CacheDistributed CacheSQL AzureWindows Azure StorageAdditional Reference Data
18.
AppFabric IntegrationIntegration providescommon BizTalk Server integration capabilities (e.g. pipeline, transforms, adapters) on Windows Azure, using out-of-box integration patterns to accelerate and simplify development. It also delivers higher level business user enablement capabilities such as Business Activity Monitoring and Rules, as well as self-service trading partner community portal and provisioning of business-to-business pipelinesOut-of-box integration patterns to accelerate and simplify development Simplify and automate interoperability with third-party applications to reduce redundancy, costs and errors Gain better visibility across end-to-end business processes and performance Promote agility and manageability
19.
AppFabric Composite AppCompositeApp provides a multi-tenant, managed service which consumes the .NET based AppFabric Composition Model definitions and automates the deployment and management of the end-to-end application. It executes application components to provide a high-performance runtime optimized for cloud-scale services and mid-tier components. It also delivers a complete hosting environment for web services built using WCF (either natively developed or using WCF Data Services and WCF RIA Services) and workflows built using WF. Build highly scalable and available composite applications composite applications consisting of AppFabric services as well as other mid-tier componentsBuild applications distributed between on-premises and Windows AzureAutomates the deployment and management of the end to end applicationEasier configuration and control of entire application and individual componentsEnd-to-end application monitoring (events, state, health and performance SLAs)
20.
AppFabric Composite AppVisualdesign experienceAppFabric delivers a new Visual Studio based designer experience that allows you assemble code from your existing application components along with newer cloud services and tie them together as a single logical entity.It also enables you to use visual tools to deploy, manage and monitor the application running in Windows Azure
21.
AppFabric ContainerScale-out applicationinfrastructureThe AppFabric Container provides base-level application infrastructure such as automatically ensuring scale out, availability, multi-tenancy and sandboxing of your application components. Composition RuntimeThe AppFabric Container manages the full lifecycle of an application component. It also supports configurations like auto-start and on-demand activation of components, and provides support for setting and modifying component configurations dynamically. It also provides support for cross-cutting aspects like throttling, metering, logging, etc.Sandboxing and Multi-tenancyThe AppFabric Container enables high-density and multi-tenancy of hosted components. The container captures and propagates the tenant context to all the application and middleware components.State ManagementThe AppFabric Container provides data and persistence management for hosted application components. Scale-out and High AvailabilityThe container provides scale-out by allowing application components to be cloned and distributed; for stateful components, the container provides scale-out and high availability using partitioning and replication mechanisms. The AppFabric Container shares the partitioning and replication mechanisms of SQL Azure.Dynamic Address Resolution and RoutingIn a fabric-based environment, components can be placed or reconfigured dynamically. The AppFabric Container automatically and efficiently routes requests to the target components and services.AppFabric ContainerMulti-tenant, high-density, scaled-out hostComposition runtime
22.
3 Key TakeawaysComprehensivecloud middleware platform to develop, deploy and manage business appsNatural solution to extend the reach of existing services through the cloudConsistent programming model and tools
#7 Use Service Bus toConnect Windows Azure Platform applications with existing applications and databases Bridge on and off-premises applicationsCreate composite applicationsService Bus BenefitsExpose apps and services through firewalls, NAT gateways, and other problematic network boundariesLower barriers to building composite applications by exposing endpoints easily, supporting multiple connection options and publish and subscribe for multicasting. Lightweight developer friendly programming model that supports standard protocols and extends similar standard bindings for Windows® Communication Foundation programmersHelps block malicious traffic and shields your services from intrusions and denial-of-service attacksService Bus FeaturesServices discovered through a stable, internet-accessible URL, irrespective of locationOne-way messaging between sender and listener supports unicast and multicast datagram distributionServices discovered through a stable, internet-accessible URL, irrespective of locationFull-duplex connection-oriented sessions between sender and listener support bi-directional communication Full-duplex, connection-oriented peer-to-peer sessions with network-boundary traversal create direct end-to-end connectivity through NATMultiple publishers and multiple subscribers can simultaneously use the service’s topic management and event distribution systemSupport of REST and HTTP Access from non-.NET platformsGlobal hierarchical namespaces that are DNS- and transport-independentAnonymous access to services is supported only if you permit it
#8 Use Service Bus toConnect Windows Azure Platform applications with existing applications and databases Bridge on and off-premises applicationsCreate composite applicationsService Bus BenefitsExpose apps and services through firewalls, NAT gateways, and other problematic network boundariesLower barriers to building composite applications by exposing endpoints easily, supporting multiple connection options and publish and subscribe for multicasting. Lightweight developer friendly programming model that supports standard protocols and extends similar standard bindings for Windows® Communication Foundation programmersHelps block malicious traffic and shields your services from intrusions and denial-of-service attacksService Bus FeaturesServices discovered through a stable, internet-accessible URL, irrespective of locationOne-way messaging between sender and listener supports unicast and multicast datagram distributionServices discovered through a stable, internet-accessible URL, irrespective of locationFull-duplex connection-oriented sessions between sender and listener support bi-directional communication Full-duplex, connection-oriented peer-to-peer sessions with network-boundary traversal create direct end-to-end connectivity through NATMultiple publishers and multiple subscribers can simultaneously use the service’s topic management and event distribution systemSupport of REST and HTTP Access from non-.NET platformsGlobal hierarchical namespaces that are DNS- and transport-independentAnonymous access to services is supported only if you permit it
#12 Use Access Control toCreate user accounts that federate a customer's existing identity management system that uses Active Directory® service, other directory systems, or any standards-based infrastructure Exercise complete, customizable control over the level of access that each user and group has within your application Apply the same level of security and control to Service Bus connectionsAccess Control BenefitsFederated identity and access control through rule based authorization enables applications to respond as if the user accounts were managed locallyFlexible standards-based service that supports multiple credentials and relying partiesLightweight developer-friendly programming model based on the Microsoft .NET Framework and Windows Communication Foundation Access Control FeaturesSetup Issuer trust with a simple Web interface or programmatically through APIs Supports Active Directory and other identity infrastructures, with minimal codingSupport for multiple credentials, including X.509 certificatesSupport for standard protocols including RESTApplications that run inside and outside the organizational boundary can rely on the serviceValidate application and user request from data and connectivity services
#13 Use Access Control toCreate user accounts that federate a customer's existing identity management system that uses Active Directory® service, other directory systems, or any standards-based infrastructure Exercise complete, customizable control over the level of access that each user and group has within your application Apply the same level of security and control to Service Bus connectionsAccess Control BenefitsFederated identity and access control through rule based authorization enables applications to respond as if the user accounts were managed locallyFlexible standards-based service that supports multiple credentials and relying partiesLightweight developer-friendly programming model based on the Microsoft .NET Framework and Windows Communication Foundation Access Control FeaturesSetup Issuer trust with a simple Web interface or programmatically through APIs Supports Active Directory and other identity infrastructures, with minimal codingSupport for multiple credentials, including X.509 certificatesSupport for standard protocols including RESTApplications that run inside and outside the organizational boundary can rely on the serviceValidate application and user request from data and connectivity services
#14 Use Access Control toCreate user accounts that federate a customer's existing identity management system that uses Active Directory® service, other directory systems, or any standards-based infrastructure Exercise complete, customizable control over the level of access that each user and group has within your application Apply the same level of security and control to Service Bus connectionsAccess Control BenefitsFederated identity and access control through rule based authorization enables applications to respond as if the user accounts were managed locallyFlexible standards-based service that supports multiple credentials and relying partiesLightweight developer-friendly programming model based on the Microsoft .NET Framework and Windows Communication Foundation Access Control FeaturesSetup Issuer trust with a simple Web interface or programmatically through APIs Supports Active Directory and other identity infrastructures, with minimal codingSupport for multiple credentials, including X.509 certificatesSupport for standard protocols including RESTApplications that run inside and outside the organizational boundary can rely on the serviceValidate application and user request from data and connectivity services
#15 Use Caching toAccelerate performance of ASP.NET web applications running on Windows Azure with minor configuration change – no change to application codeDecrease latency of access to data that is stored in in SQL Azure Databases or Windows Azure storageCaching BenefitsHighly scalable caching solution with low latency and high throughputProvided entirely as a service - no installation or management of instances required Flexible management - dynamically increase/decrease cache size as neededIntegrates easily with existing ASP.NET web applicationsCaching FeaturesPre-built ASP.NET providers for session state and page output caching, enabling acceleration of web applications without having to modify application codeCaches any managed object - no object size limits, no serialization costs for local cachingEasily integrates into existing applications Consistent development model across both Windows Azure AppFabric and Windows Server AppFabricSecured access and authorization provided by the Access Control serviceAdditional features on roadmap: high-availability, configurable regions, notifications, and more
#16 Use Caching toAccelerate performance of ASP.NET web applications running on Windows Azure with minor configuration change – no change to application codeDecrease latency of access to data that is stored in in SQL Azure Databases or Windows Azure storageCaching BenefitsHighly scalable caching solution with low latency and high throughputProvided entirely as a service - no installation or management of instances required Flexible management - dynamically increase/decrease cache size as neededIntegrates easily with existing ASP.NET web applicationsCaching FeaturesPre-built ASP.NET providers for session state and page output caching, enabling acceleration of web applications without having to modify application codeCaches any managed object - no object size limits, no serialization costs for local cachingEasily integrates into existing applications Consistent development model across both Windows Azure AppFabric and Windows Server AppFabricSecured access and authorization provided by the Access Control serviceAdditional features on roadmap: high-availability, configurable regions, notifications, and more
#17 Use Caching toAccelerate performance of ASP.NET web applications running on Windows Azure with minor configuration change – no change to application codeDecrease latency of access to data that is stored in in SQL Azure Databases or Windows Azure storageCaching BenefitsHighly scalable caching solution with low latency and high throughputProvided entirely as a service - no installation or management of instances required Flexible management - dynamically increase/decrease cache size as neededIntegrates easily with existing ASP.NET web applicationsCaching FeaturesPre-built ASP.NET providers for session state and page output caching, enabling acceleration of web applications without having to modify application codeCaches any managed object - no object size limits, no serialization costs for local cachingEasily integrates into existing applications Consistent development model across both Windows Azure AppFabric and Windows Server AppFabricSecured access and authorization provided by the Access Control serviceAdditional features on roadmap: high-availability, configurable regions, notifications, and more
#18 Use Integration toIntegrate between your Windows Azure Platform applications and third-party Software as a Service (SaaS) applicationsExtend the Service Bus capabilities to enable for integration with existing LOB applications and databasesIntegration BenefitsOut-of-box integration patterns to accelerate and simplify development Simplify and automate interoperability with third-party applications to reduce redundancy, costs and errors Gain better visibility across end-to-end business processes and performance Promote agility and manageability Integration FeaturesCommon Integration capabilities (pipeline, transforms, adapters) enable configurable processing of incoming and outgoing messages Out-of-box integration patterns accelerate and simplify development Business Activity Monitoring and Rules capabilities enable greater agility and visibility to application processes Trading Partner Management and B2B pipelines enable automated electronic collaboration with trading partners Used in concert with the Service Bus and Access Control services for secure and reliable messaging Used in concert with the Composite App service for including information from Line of Business applications into your new composite applications
#19 Use Composite App toAutomate the deployment and management of the end to end composite application - consisting of Windows Azure Platform services, third-party services, as well as other mid-tier componentsRun Windows Communication Foundation web services and Windows Workflow Foundation workflowsComposite App BenefitsAutomates the deployment and management of the end to end application - eliminating manual steps needed by both developers and ITPros today Easier configuration and control of entire application and individual componentsEnd-to-end application monitoring (events, state, health and performance SLAs)Easier troubleshooting (through richer diagnostics and debugging of the whole application)Composite App FeaturesMulti-tenant, managed service which consumes the Composition Model definition and automates the deployment and management of the end to end application Complete hosting environment for web services built using Windows Communication Foundation and workflows built using Windows Workflow FoundationPolicy based management – declaratively state the policies that govern the management of your end to end application Performance optimization of the whole application (scale-out/in, fine-tuning, migration, etc)N-as-1 app lifecycle management – manage all of the components of your end-to-end application consistently across the lifecycle
#20 Use Composite App toAutomate the deployment and management of the end to end composite application - consisting of Windows Azure Platform services, third-party services, as well as other mid-tier componentsRun Windows Communication Foundation web services and Windows Workflow Foundation workflowsComposite App BenefitsAutomates the deployment and management of the end to end application - eliminating manual steps needed by both developers and ITPros today Easier configuration and control of entire application and individual componentsEnd-to-end application monitoring (events, state, health and performance SLAs)Easier troubleshooting (through richer diagnostics and debugging of the whole application)Composite App FeaturesMulti-tenant, managed service which consumes the Composition Model definition and automates the deployment and management of the end to end application Complete hosting environment for web services built using Windows Communication Foundation and workflows built using Windows Workflow FoundationPolicy based management – declaratively state the policies that govern the management of your end to end application Performance optimization of the whole application (scale-out/in, fine-tuning, migration, etc)N-as-1 app lifecycle management – manage all of the components of your end-to-end application consistently across the lifecycle