SlideShare une entreprise Scribd logo
1  sur  48
Windows Server
AppFabric –
Application
Infrastructure For On-
Premises Services




      K. Meena
      19/04/11
Agenda
• Why Windows Server AppFabric?
  – A Developer’s viewpoint
• AppFabric
  –   Architecture
  –   Hosting
  –   Persistence
  –   Monitoring
  –   Caching

• How Appfabric handles the ‘*- abilities’
Agenda
• Why Windows Server AppFabric?
  – A Developer’s viewpoint
• AppFabric
  – Architecture
  – Hosting
  – Persistence
  – Monitoring
• How Appfabric handles the ‘*- abilities’
What is the developer’s Job ?


     Business
     Logic
What is the developer’s Job ?
Workflow Services in .NET 4
       Workflow Service Host             Management
                                          Endpoint


                                          Persistence   Persistence
             Activity Library              Behavior     (Instances)
                  Receive

                    Send
                                           Tracking
                      ...                  Behavior     Monitoring



Not Easy to get
Configuration                     Monitoring
                                    How to
  & Hosting
   started!                      instrument?
                                  (DB based)
            App Server Support
                             Performance,
             – Out of the Box Persistence,
                              !
              Dashboard +         - Abilities???
                                *Availability,
             How to script?
               Scripting          Reliability
                Support
Challenges Using WF And WCF Today
• “I want to get my WF and WCF services up and
  running easily - Why doesn’t it just work?”
• “It is difficult to monitor and
  control running WF and WCF services.”
• “I wish I had easy to use tools and scripting
  support.”
• “How do I make my services
  enterprise-ready? ” – RSP:
  Reliability, Scalability, Performance
Requirements
• Out of the Box, Centralized support for Server
                                       App
  – Service Hosting                      Support out of
                                            the box!
  – Managing Instances
  – Scaling out Distributed Applications
  – Scripting management tasks
  – Easier Troubleshooting
  – Distributed caching
Agenda
• Why Windows Server AppFabric?
  – A Developer’s viewpoint
• AppFabric
  – Architecture
  – Hosting
  – Persistence
  – Monitoring
  – Caching
• How Appfabric handles the ‘abilities’
Windows Server AppFabric

                            Management Tools
    IIS Manager Modules

    PowerShell


              Services                             Workflows


   Persistence            Hosting             Monitoring   Caching
Windows Server
                      Windows Server AppFabric

  .NET Framework

    Persistence            Runtime Databases               Monitoring


                                    IIS/WAS
Which AppFabric?
Windows Azure AppFabric   Windows Server AppFabric




                          You are Here
Agenda
• Why Windows Server AppFabric?
  – A Developer’s viewpoint
• AppFabric
  – Architecture
  – Hosting
  – Persistence
  – Monitoring
  – Caching
• How Appfabric handles the ‘abilities’
Hosting
• Auto-Start of a Service
  – Reduce latency for first message
  – Service initialized before the first call
  – Hosting protocols for which there are no Listener
    Adapters

• Scenarios
  – Computer re-start
  – Protocols like WS-Discovery announcement require
    applications to be always available
  – Connect to a DB, read hundreds of rows of data,
    populate cache on creation
Case Study
Solution
DEMO
Getting Started
K.Meena
Director
SymIndia Training & Consultancy Pvt Ltd
Agenda
• Why Windows Server AppFabric?
  – A Developer’s viewpoint
• AppFabric
  – Architecture
  – Hosting
  – Persistence
  – Monitoring
  – Caching
• How Appfabric handles the ‘abilities’
Persistence
          Workflow Service
                    Management
                    Endpoint




Windows Server AppFabric
    Workflow
   Management
     Service




                                                 Instance
                                               123 | data

                                               456 | data

                                               789 | data

                                               011 | data

                                 Persistence
                                 DB
Scenarios
• Workflow waits for some external stimulus
• Workflow has explicit Delay planned
• Workflow has asynchronous tasks, requires
  correlation support
• Workflow instance should be re-activated if
  the host crashes
  – Same m/c or different machine
• Failed Instances should be recoverable, if
  possible
Scenarios
        • Persist before Replying
         • Waiting
        • m/c or host crash
        • Instance aborted ,
          recoverable
Asynchronous Operations
• One way operations using correlation provides
  simple async messaging infrastructure
           Workflow
                                   Other
            Send                  Service
                                 Id = 42
           Do Work

           Do Work

           Do Work

           Receive     Id = 42   Calls Back
create correlation
1. Add item (userId 3)                          2. Save (userId 3)
                               Receive


                                                                        Persistence DB
                                                                          (Instances)
3. View items (userId 3)                        4. Load (userId 3)
                               Receive                                 Instance         Key
                                                                     123 | data   123 | userid 1

5. Best Price (userId 3)                        6. Load (userId 3)   456 | data   456 | userid 2

                                Receive                              789 | data
                                                                     789 | data   789 | userid 3
                                                                                  789 | userid 3

                                                                     A11 | data   A11 | userid4
Instance Recovery & Control

         1
                                                 5
                  Workflow                           Management
        Workflow Service Host
                                                     Service
     AppFabric


             SQL Instance Store
     3


App Domain                                               4
                                  2
                                      instance

  Host Crash                         SQL
  M/c Crash                       Persistence
  Unhandled Exception              Database
  – WF Instance aborted
What you need to do
• Decide how many Persistence Stores are
  required
• Check whether SQL based Instance Store is
  required/ will suffice
  – Create a Custom Persistence participant if
    required
• Configure Persistence and Instance Control in
  AppFabric
DEMO
Workflow Persistence & Instance Control
K. Meena
Director
SymIndia Training & Consultancy Pvt Ltd
Agenda
• Why Windows Server AppFabric?
  – A Developer’s viewpoint
• AppFabric
  – Architecture
  – Hosting
  – Persistence
  – Monitoring
  – Caching
• How Appfabric handles the ‘abilities’
Monitoring
• Visibility into the operation of services
• Scenarios
  • Health monitoring – “How well is my app
    running?”
  • Troubleshooting – “What has failed with my app?”
  • For every approver, track the time taken , approval
    status
  • How long does the credit appraisal workflow take
    to complete?
Monitoring

Workflow Service




                                    ETW
                                                            Monitoring Tools
                      WCF
                      Trace
                     Tracking
                      Participant
Windows Server AppFabric
                                          Event Collector    Monitoring
                       Tracking           Service            Database
                        Profile
What You can do?
•   Decide Monitoring level
•   Define a Tracking Profile for your service
•   Create Custom Tracking Records
•   Decide variables and arguments to track
•   Use promoted properties to collect business
    data
DEMO
Tracking with AppFabric
K. Meena
SymIndia Training & Consultancy Pvt Ltd
Bangalore
Agenda
• Why Windows Server AppFabric?
  – A Developer’s viewpoint
• AppFabric
  – Architecture
  – Hosting
  – Persistence
  – Monitoring
  – Caching
• How Appfabric handles the ‘abilities’
What is AppFabric Caching?
• An explicit, distributed, in-memory application cache for all kinds
  of data
   – (CLR objects, rows, XML, Binary data etc.)
   – Fuse "memory" across machines into a unified cache
                                                        Caching clients can
                                                        be across machines
                                                         or processes, can
                                                          maintain local
                                                               cache
                                                          Clients Access
                                                         the Cache as if it
     Unified Cache View                                    was a large
                                                           single cache

                                                            Cache Layer
                                                          distributes data
                                                             across the
                                                           various cache
                                                                nodes
App caching Features
•   Simple Access Patterns – Get/Add/Put/Remove
•   Tag Searching
•   Partitioned & Local Client Cache
•   High Availability
•   Multiple Concurrency Control Options
•   ASP.Net Integration
•   Management & Monitoring
•   Security
•   Cache Event Notifications
Classify Your Data
• Reference Data - unchanging, accessed by
  multiple clients
• Activity data - changing, accessed by a single
  client
• Resource Data – changing, accessed by
  multiple clients
Examine Requirements
•   Is latency critical?
•   Is the data secured?
•   Is the data evictable?
•   Can Staleness of Data be tolerated?
•   Should cached data survive m/c failures?
Agenda
• Why Windows Server AppFabric?
  – A Developer’s viewpoint
• AppFabric
  – Architecture
  – Hosting
  – Persistence
  – Monitoring
  – Caching
• How Appfabric handles the ‘abilities’
Windows Server AppFabric
   Startup                                                 Management Tools
Performance –                  IIS Manager Modules

                               PowerShell
  Auto Start
                                                Services                      Workflows

                           Persistence
                             Persistence Hosting
                                          Hosting       Monitoring Caching
                                                                    Caching
                          Windows ServerWindows Server AppFabric

                             .NET Framework

                               Persistence                 Runtime Databases         Monitoring

                                                               IIS/WAS




                                                           Performance – Speed of Access
                                                           Scalability – Cache Cluster,
  Reliability – Long Running WF                                   Business Logic in multiple m/cs
  Availability - Recovery from crash                       Availability – Copies of Cache
  Scalability – M/c Agnostic WF
Startup & Reliabilityy and Availability
Scaling a Workflow Service
                                              AppFabric
                     Web Server                Hosting
                                               Services
                      ASP.NET     2) Invoke
                                                            3) Persist
     1) Make first                workflow
                       Pages                                workflow
      request to                   service
                                                           state after
      application                                           handling
                     Web Server                              request


                      ASP.NET                                     Persistence
                                              AppFabric              Store
                       Pages
                                               Hosting
4) Make second                                 Services
   request to
                     Web Server                           6) Load workflow
                                                          state and handle
   application                                                 request
                      ASP.NET
                       Pages      5) Invoke
                                  workflow
                                   service
Caching with High Availability
                                    Cache Cluster

                                    Cache Server
                                  AppFabric Caching
                3) Return value       Services
                 of data item X
Cache Client    from secondary           X
                      copy
                                    Cached Data

                                    Cache Server
                 2) Access        AppFabric Caching        1) Cache server
                data item X           Services             holding primary
                                                         copy of data item X
                                         X                  fails or is shut
                                    Cached Data                  down




                                      Primary copies
                                      Secondary copies
The Complete Picture
                         Cache Cluster      AppFabric
                                             Caching
                                             Services
                          Cache requests
                           spread across
                 Web       cache servers
User requests   Server
spread across
 Web servers

                                            AppFabric
                                             Hosting
                                             Services
                         Service requests
                          spread across
                           middle-tier
                             servers
Summary
• Life made easy for Developers of WCF and
  Workflow Services with Windows Server
  AppFabric
• Out of the Box Support for
  –   Hosting WCF and Workflow Services
  –   Configuration
  –   Tool Support
  –   Persistence
  –   Monitoring
  –   Caching
  –   Enterprise Capabilities
System Internals:
         Durable Timer for Workflows


          Workflow
          1                              4
                                                   Management
            Delay
                                                     Service

     Workflow Service Host
SQL Instance Store
                                       AppFabric

             2                                        3


                            SQL
                         Persistence
                          Database
Instance Activation
                                                                4. Activate
App

   Service Activation Endpoint
                                                      WMS
SMS

      5.Activates                                  1.Create &
                                                   Subscribe                  3. Raised
      Workflow Service Host                        for Event                  Event

                       8.Load                     Instance Store
         6.Creates
                       instance
      Instance Store                               SQL WF Instance Store

      SQL WF Instance Store


                                                                        2. Activatable
                                     Instance Store Tables              Notification
 7. Loads
 Instance State               Persistence DB
Command Activation
   App

  Windows Service host                 4.Command
                                                                  WMS
                         Instance Control
                         Endpoint
                                                     1. Create
      Instance Store                                                       3.Command

      SQL WF Instance Store

                                                         SQL Instance Store Control
                                                                  Provider




                                                                             2.Dequeue
Instance      SQL Control 2. Enqueue           Command Queue
Control       Provider
PowerShell                              Persistence DB
Instance Recovery

         1
                                                 5
                  Workflow                           Management
        Workflow Service Host
                                                     Service
     AppFabric


             SQL Instance Store
     3


App Domain                                               4
                                  2
                                      instance


                                     SQL
                                  Persistence
                                   Database
AppFabric Caching API
// Create instance of cachefactory (reads appconfig)
DataCacheFactory fac = new DataCacheFactory();

// Get a named cache from the factory
DataCache catalog = fac.GetCache("catalogcache");

// Simple Get/Put
catalog.Put("toy-101", new Toy("Puzzle", .,.));

// From the same or a different client
Toy toyObj = (Toy)catalog.Get("toy-101");

// Region based Get/Put
catalog.CreateRegion("toyRegion");

// Both toy and toyparts are put in the same region
catalog.Put("toy-101", new Toy( .,.), “toyRegion”);
Catalog.Put("toypart-100", new ToyParts(…), “toyRegion”);

Toy toyObj = (Toy)catalog.Get("toy-101“,"toyRegion");
AppFabric Caching Logical Hierarchy
      AppFabric   AppFabric                 AppFabric               AppFabric
      Caching     Caching                   Caching                 Caching
      Service     Service                   Service                 Service

      Named Cache :               Product Catalog

      Named Cache :               Electronics Inventory


                                                              Key Payload Tags
                              Region A                        121 xxxx “Toy” “Child”
                                                               123 yyyy “Toy” “Chair”..
                  Regions

Machine -> Cache Host -> Named Caches -> Regions -> Cache Items -> Objects

• Host                                                  • Cache Item
   – Physical processes hosting                            – Key, Payload (Object ), Tags, TTL,
     AppFabric Caching instance.                             Timestamps, Version
• Named Caches                                          • Regions
   – Can span across machines                              – Physically co-located Container of
   – Defined in the configuration file                       Cache Items
                                                           – May be implicit or explicitly created

Contenu connexe

Tendances

Performance Oriented Design
Performance Oriented DesignPerformance Oriented Design
Performance Oriented DesignRodrigo Campos
 
Don't touch that server
Don't touch that serverDon't touch that server
Don't touch that servercrdant
 
vCenter Operations 5: Level 300 training
vCenter Operations 5: Level 300 trainingvCenter Operations 5: Level 300 training
vCenter Operations 5: Level 300 trainingEric Sloof
 
Classloader leak detection in websphere application server
Classloader leak detection in websphere application serverClassloader leak detection in websphere application server
Classloader leak detection in websphere application serverRohit Kelapure
 
V mware v sphere boot camp
V mware v sphere boot campV mware v sphere boot camp
V mware v sphere boot campbestip
 
JVM Multitenancy (JavaOne 2012)
JVM Multitenancy (JavaOne 2012)JVM Multitenancy (JavaOne 2012)
JVM Multitenancy (JavaOne 2012)Graeme_IBM
 
Practical Functional Javascript
Practical Functional JavascriptPractical Functional Javascript
Practical Functional JavascriptOliver Steele
 
Building azure applications ireland
Building azure applications irelandBuilding azure applications ireland
Building azure applications irelandMichael Meagher
 
It camp veeam presentation (no videos)
It camp veeam presentation (no videos)It camp veeam presentation (no videos)
It camp veeam presentation (no videos)Harold Wong
 
Alarm vm sales playbook
Alarm vm sales playbookAlarm vm sales playbook
Alarm vm sales playbookJohn Milanski
 
AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...
AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...
AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...WASdev Community
 
Sql server 2012 ha and dr sql saturday dc
Sql server 2012 ha and dr sql saturday dcSql server 2012 ha and dr sql saturday dc
Sql server 2012 ha and dr sql saturday dcJoseph D'Antoni
 
Siebel Server Cloning available in 8.1.1.9 / 8.2.2.2
Siebel Server Cloning available in 8.1.1.9 / 8.2.2.2Siebel Server Cloning available in 8.1.1.9 / 8.2.2.2
Siebel Server Cloning available in 8.1.1.9 / 8.2.2.2Jeroen Burgers
 
Sql server 2012 ha and dr sql saturday tampa
Sql server 2012 ha and dr sql saturday tampaSql server 2012 ha and dr sql saturday tampa
Sql server 2012 ha and dr sql saturday tampaJoseph D'Antoni
 
Managing Test Labs Without the Headaches
Managing Test Labs Without the HeadachesManaging Test Labs Without the Headaches
Managing Test Labs Without the HeadachesImaginet
 
VMware vFabric - CIO Webinar - Al Sargent
VMware vFabric - CIO Webinar - Al SargentVMware vFabric - CIO Webinar - Al Sargent
VMware vFabric - CIO Webinar - Al SargentVMware vFabric
 
Sql Server 2012 HA and DR -- SQL Saturday Richmond
Sql Server 2012 HA and DR -- SQL Saturday RichmondSql Server 2012 HA and DR -- SQL Saturday Richmond
Sql Server 2012 HA and DR -- SQL Saturday RichmondJoseph D'Antoni
 
Calculating the Savings of Moving Your Drupal Site to the Cloud
Calculating the Savings of Moving Your Drupal Site to the CloudCalculating the Savings of Moving Your Drupal Site to the Cloud
Calculating the Savings of Moving Your Drupal Site to the CloudAcquia
 

Tendances (20)

Performance Oriented Design
Performance Oriented DesignPerformance Oriented Design
Performance Oriented Design
 
Don't touch that server
Don't touch that serverDon't touch that server
Don't touch that server
 
vCenter Operations 5: Level 300 training
vCenter Operations 5: Level 300 trainingvCenter Operations 5: Level 300 training
vCenter Operations 5: Level 300 training
 
Classloader leak detection in websphere application server
Classloader leak detection in websphere application serverClassloader leak detection in websphere application server
Classloader leak detection in websphere application server
 
V mware v sphere boot camp
V mware v sphere boot campV mware v sphere boot camp
V mware v sphere boot camp
 
JVM Multitenancy (JavaOne 2012)
JVM Multitenancy (JavaOne 2012)JVM Multitenancy (JavaOne 2012)
JVM Multitenancy (JavaOne 2012)
 
Practical Functional Javascript
Practical Functional JavascriptPractical Functional Javascript
Practical Functional Javascript
 
Building azure applications ireland
Building azure applications irelandBuilding azure applications ireland
Building azure applications ireland
 
It camp veeam presentation (no videos)
It camp veeam presentation (no videos)It camp veeam presentation (no videos)
It camp veeam presentation (no videos)
 
Alarm vm sales playbook
Alarm vm sales playbookAlarm vm sales playbook
Alarm vm sales playbook
 
AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...
AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...
AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...
 
Sql server 2012 ha and dr sql saturday dc
Sql server 2012 ha and dr sql saturday dcSql server 2012 ha and dr sql saturday dc
Sql server 2012 ha and dr sql saturday dc
 
Siebel Server Cloning available in 8.1.1.9 / 8.2.2.2
Siebel Server Cloning available in 8.1.1.9 / 8.2.2.2Siebel Server Cloning available in 8.1.1.9 / 8.2.2.2
Siebel Server Cloning available in 8.1.1.9 / 8.2.2.2
 
2018 jk
2018 jk2018 jk
2018 jk
 
Sql server 2012 ha and dr sql saturday tampa
Sql server 2012 ha and dr sql saturday tampaSql server 2012 ha and dr sql saturday tampa
Sql server 2012 ha and dr sql saturday tampa
 
Managing Test Labs Without the Headaches
Managing Test Labs Without the HeadachesManaging Test Labs Without the Headaches
Managing Test Labs Without the Headaches
 
Siebel server cloning
Siebel server cloningSiebel server cloning
Siebel server cloning
 
VMware vFabric - CIO Webinar - Al Sargent
VMware vFabric - CIO Webinar - Al SargentVMware vFabric - CIO Webinar - Al Sargent
VMware vFabric - CIO Webinar - Al Sargent
 
Sql Server 2012 HA and DR -- SQL Saturday Richmond
Sql Server 2012 HA and DR -- SQL Saturday RichmondSql Server 2012 HA and DR -- SQL Saturday Richmond
Sql Server 2012 HA and DR -- SQL Saturday Richmond
 
Calculating the Savings of Moving Your Drupal Site to the Cloud
Calculating the Savings of Moving Your Drupal Site to the CloudCalculating the Savings of Moving Your Drupal Site to the Cloud
Calculating the Savings of Moving Your Drupal Site to the Cloud
 

En vedette

A Bit of Design Thinking for Developers
A Bit of Design Thinking for DevelopersA Bit of Design Thinking for Developers
A Bit of Design Thinking for DevelopersSaltmarch Media
 
Ireland Startup Ecosystems
Ireland Startup EcosystemsIreland Startup Ecosystems
Ireland Startup EcosystemsRay Walshe LION
 
Local Dental 360™: Building a Solid Local SEO Foundation with Citations
Local Dental 360™: Building a Solid Local SEO Foundation with CitationsLocal Dental 360™: Building a Solid Local SEO Foundation with Citations
Local Dental 360™: Building a Solid Local SEO Foundation with CitationsSocial Dental Network
 
Architecting Smarter Apps with Entity Framework
Architecting Smarter Apps with Entity FrameworkArchitecting Smarter Apps with Entity Framework
Architecting Smarter Apps with Entity FrameworkSaltmarch Media
 
Social media
Social mediaSocial media
Social mediaKapetras2
 

En vedette (7)

A Bit of Design Thinking for Developers
A Bit of Design Thinking for DevelopersA Bit of Design Thinking for Developers
A Bit of Design Thinking for Developers
 
Ireland Startup Ecosystems
Ireland Startup EcosystemsIreland Startup Ecosystems
Ireland Startup Ecosystems
 
Local Dental 360™: Building a Solid Local SEO Foundation with Citations
Local Dental 360™: Building a Solid Local SEO Foundation with CitationsLocal Dental 360™: Building a Solid Local SEO Foundation with Citations
Local Dental 360™: Building a Solid Local SEO Foundation with Citations
 
Architecting Smarter Apps with Entity Framework
Architecting Smarter Apps with Entity FrameworkArchitecting Smarter Apps with Entity Framework
Architecting Smarter Apps with Entity Framework
 
Alternate JVM Languages
Alternate JVM LanguagesAlternate JVM Languages
Alternate JVM Languages
 
Social media
Social mediaSocial media
Social media
 
Dictado bisílabas con T
Dictado bisílabas con TDictado bisílabas con T
Dictado bisílabas con T
 

Similaire à WF and WCF with AppFabric – Application Infrastructure for OnPremise Services

Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...
Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...
Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...Michaël Figuière
 
Oracle Application Management Suite
Oracle Application Management SuiteOracle Application Management Suite
Oracle Application Management SuiteOracleVolutionSeries
 
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server PerformanceBIOVIA
 
(ATS3-APP14) Troubleshooting Symyx Notebook client performance
(ATS3-APP14) Troubleshooting Symyx Notebook client performance(ATS3-APP14) Troubleshooting Symyx Notebook client performance
(ATS3-APP14) Troubleshooting Symyx Notebook client performanceBIOVIA
 
AWS Sydney Summit 2013 - Architecting for High Availability
AWS Sydney Summit 2013 - Architecting for High AvailabilityAWS Sydney Summit 2013 - Architecting for High Availability
AWS Sydney Summit 2013 - Architecting for High AvailabilityAmazon Web Services
 
Netflix Cloud Platform and Open Source
Netflix Cloud Platform and Open SourceNetflix Cloud Platform and Open Source
Netflix Cloud Platform and Open Sourceaspyker
 
Brief about Windows Azure Platform
Brief about Windows Azure Platform Brief about Windows Azure Platform
Brief about Windows Azure Platform K.Mohamed Faizal
 
Designing a Highly Available Management Cluster for the Cloud
Designing a Highly Available Management Cluster for the CloudDesigning a Highly Available Management Cluster for the Cloud
Designing a Highly Available Management Cluster for the CloudArron Stebbing
 
AzureSQL Managed Instance (SQLKonferenz 2018)
AzureSQL Managed Instance (SQLKonferenz 2018)AzureSQL Managed Instance (SQLKonferenz 2018)
AzureSQL Managed Instance (SQLKonferenz 2018)Jovan Popovic
 
Symantec Endpoint Virtualization Suite
Symantec Endpoint Virtualization SuiteSymantec Endpoint Virtualization Suite
Symantec Endpoint Virtualization SuitePipeline Srl
 
2 rft simplified_scripting_shinoj_z
2 rft simplified_scripting_shinoj_z2 rft simplified_scripting_shinoj_z
2 rft simplified_scripting_shinoj_zIBM
 
RFT Simplified Scripting- Shinoj Z
RFT Simplified Scripting- Shinoj ZRFT Simplified Scripting- Shinoj Z
RFT Simplified Scripting- Shinoj ZRoopa Nadkarni
 
AWS Public Sector Symposium 2014 Canberra | Test and Development on AWS
AWS Public Sector Symposium 2014 Canberra | Test and Development on AWSAWS Public Sector Symposium 2014 Canberra | Test and Development on AWS
AWS Public Sector Symposium 2014 Canberra | Test and Development on AWSAmazon Web Services
 
Windows Azure Platfom By Soumow Atitallah
Windows Azure Platfom By Soumow AtitallahWindows Azure Platfom By Soumow Atitallah
Windows Azure Platfom By Soumow AtitallahSoumow Dollon
 
Performance Engineering Case Study V1.0
Performance Engineering Case Study    V1.0Performance Engineering Case Study    V1.0
Performance Engineering Case Study V1.0sambitgarnaik
 
Techdays 2013 managing your hybrid cloud datacenter with scom 2012 and what’s...
Techdays 2013 managing your hybrid cloud datacenter with scom 2012 and what’s...Techdays 2013 managing your hybrid cloud datacenter with scom 2012 and what’s...
Techdays 2013 managing your hybrid cloud datacenter with scom 2012 and what’s...wwwally
 
Techdays 2013 managing your hybrid cloud datacenter with scom 2012 and what...
Techdays 2013   managing your hybrid cloud datacenter with scom 2012 and what...Techdays 2013   managing your hybrid cloud datacenter with scom 2012 and what...
Techdays 2013 managing your hybrid cloud datacenter with scom 2012 and what...CompuTrain. De IT opleider.
 

Similaire à WF and WCF with AppFabric – Application Infrastructure for OnPremise Services (20)

Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...
Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...
Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...
 
App fabric introduction
App fabric introductionApp fabric introduction
App fabric introduction
 
Oracle Application Management Suite
Oracle Application Management SuiteOracle Application Management Suite
Oracle Application Management Suite
 
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
 
(ATS3-APP14) Troubleshooting Symyx Notebook client performance
(ATS3-APP14) Troubleshooting Symyx Notebook client performance(ATS3-APP14) Troubleshooting Symyx Notebook client performance
(ATS3-APP14) Troubleshooting Symyx Notebook client performance
 
AWS Sydney Summit 2013 - Architecting for High Availability
AWS Sydney Summit 2013 - Architecting for High AvailabilityAWS Sydney Summit 2013 - Architecting for High Availability
AWS Sydney Summit 2013 - Architecting for High Availability
 
Netflix Cloud Platform and Open Source
Netflix Cloud Platform and Open SourceNetflix Cloud Platform and Open Source
Netflix Cloud Platform and Open Source
 
Brief about Windows Azure Platform
Brief about Windows Azure Platform Brief about Windows Azure Platform
Brief about Windows Azure Platform
 
WSO2 Application Server
WSO2 Application ServerWSO2 Application Server
WSO2 Application Server
 
Designing a Highly Available Management Cluster for the Cloud
Designing a Highly Available Management Cluster for the CloudDesigning a Highly Available Management Cluster for the Cloud
Designing a Highly Available Management Cluster for the Cloud
 
AzureSQL Managed Instance (SQLKonferenz 2018)
AzureSQL Managed Instance (SQLKonferenz 2018)AzureSQL Managed Instance (SQLKonferenz 2018)
AzureSQL Managed Instance (SQLKonferenz 2018)
 
Symantec Endpoint Virtualization Suite
Symantec Endpoint Virtualization SuiteSymantec Endpoint Virtualization Suite
Symantec Endpoint Virtualization Suite
 
2 rft simplified_scripting_shinoj_z
2 rft simplified_scripting_shinoj_z2 rft simplified_scripting_shinoj_z
2 rft simplified_scripting_shinoj_z
 
RFT Simplified Scripting- Shinoj Z
RFT Simplified Scripting- Shinoj ZRFT Simplified Scripting- Shinoj Z
RFT Simplified Scripting- Shinoj Z
 
Un-clouding the cloud
Un-clouding the cloudUn-clouding the cloud
Un-clouding the cloud
 
AWS Public Sector Symposium 2014 Canberra | Test and Development on AWS
AWS Public Sector Symposium 2014 Canberra | Test and Development on AWSAWS Public Sector Symposium 2014 Canberra | Test and Development on AWS
AWS Public Sector Symposium 2014 Canberra | Test and Development on AWS
 
Windows Azure Platfom By Soumow Atitallah
Windows Azure Platfom By Soumow AtitallahWindows Azure Platfom By Soumow Atitallah
Windows Azure Platfom By Soumow Atitallah
 
Performance Engineering Case Study V1.0
Performance Engineering Case Study    V1.0Performance Engineering Case Study    V1.0
Performance Engineering Case Study V1.0
 
Techdays 2013 managing your hybrid cloud datacenter with scom 2012 and what’s...
Techdays 2013 managing your hybrid cloud datacenter with scom 2012 and what’s...Techdays 2013 managing your hybrid cloud datacenter with scom 2012 and what’s...
Techdays 2013 managing your hybrid cloud datacenter with scom 2012 and what’s...
 
Techdays 2013 managing your hybrid cloud datacenter with scom 2012 and what...
Techdays 2013   managing your hybrid cloud datacenter with scom 2012 and what...Techdays 2013   managing your hybrid cloud datacenter with scom 2012 and what...
Techdays 2013 managing your hybrid cloud datacenter with scom 2012 and what...
 

Plus de Saltmarch Media

Concocting an MVC, Data Services and Entity Framework solution for Azure
Concocting an MVC, Data Services and Entity Framework solution for AzureConcocting an MVC, Data Services and Entity Framework solution for Azure
Concocting an MVC, Data Services and Entity Framework solution for AzureSaltmarch Media
 
Caring about Code Quality
Caring about Code QualityCaring about Code Quality
Caring about Code QualitySaltmarch Media
 
Learning Open Source Business Intelligence
Learning Open Source Business IntelligenceLearning Open Source Business Intelligence
Learning Open Source Business IntelligenceSaltmarch Media
 
Java EE 7: the Voyage of the Cloud Treader
Java EE 7: the Voyage of the Cloud TreaderJava EE 7: the Voyage of the Cloud Treader
Java EE 7: the Voyage of the Cloud TreaderSaltmarch Media
 
Is NoSQL The Future of Data Storage?
Is NoSQL The Future of Data Storage?Is NoSQL The Future of Data Storage?
Is NoSQL The Future of Data Storage?Saltmarch Media
 
Introduction to WCF RIA Services for Silverlight 4 Developers
Introduction to WCF RIA Services for Silverlight 4 DevelopersIntroduction to WCF RIA Services for Silverlight 4 Developers
Introduction to WCF RIA Services for Silverlight 4 DevelopersSaltmarch Media
 
Integrated Services for Web Applications
Integrated Services for Web ApplicationsIntegrated Services for Web Applications
Integrated Services for Web ApplicationsSaltmarch Media
 
Gaelyk - Web Apps In Practically No Time
Gaelyk - Web Apps In Practically No TimeGaelyk - Web Apps In Practically No Time
Gaelyk - Web Apps In Practically No TimeSaltmarch Media
 
CDI and Seam 3: an Exciting New Landscape for Java EE Development
CDI and Seam 3: an Exciting New Landscape for Java EE DevelopmentCDI and Seam 3: an Exciting New Landscape for Java EE Development
CDI and Seam 3: an Exciting New Landscape for Java EE DevelopmentSaltmarch Media
 
JBoss at Work: Using JBoss AS 6
JBoss at Work: Using JBoss AS 6JBoss at Work: Using JBoss AS 6
JBoss at Work: Using JBoss AS 6Saltmarch Media
 
“What did I do?” - T-SQL Worst Practices
“What did I do?” - T-SQL Worst Practices“What did I do?” - T-SQL Worst Practices
“What did I do?” - T-SQL Worst PracticesSaltmarch Media
 
Building RESTful Services with WCF 4.0
Building RESTful Services with WCF 4.0Building RESTful Services with WCF 4.0
Building RESTful Services with WCF 4.0Saltmarch Media
 
Building Facebook Applications on Windows Azure
Building Facebook Applications on Windows AzureBuilding Facebook Applications on Windows Azure
Building Facebook Applications on Windows AzureSaltmarch Media
 
A Cocktail of Guice and Seam, the missing ingredients for Java EE 6
A Cocktail of Guice and Seam, the missing ingredients for Java EE 6A Cocktail of Guice and Seam, the missing ingredients for Java EE 6
A Cocktail of Guice and Seam, the missing ingredients for Java EE 6Saltmarch Media
 

Plus de Saltmarch Media (15)

Concocting an MVC, Data Services and Entity Framework solution for Azure
Concocting an MVC, Data Services and Entity Framework solution for AzureConcocting an MVC, Data Services and Entity Framework solution for Azure
Concocting an MVC, Data Services and Entity Framework solution for Azure
 
Caring about Code Quality
Caring about Code QualityCaring about Code Quality
Caring about Code Quality
 
Learning Open Source Business Intelligence
Learning Open Source Business IntelligenceLearning Open Source Business Intelligence
Learning Open Source Business Intelligence
 
Java EE 7: the Voyage of the Cloud Treader
Java EE 7: the Voyage of the Cloud TreaderJava EE 7: the Voyage of the Cloud Treader
Java EE 7: the Voyage of the Cloud Treader
 
Is NoSQL The Future of Data Storage?
Is NoSQL The Future of Data Storage?Is NoSQL The Future of Data Storage?
Is NoSQL The Future of Data Storage?
 
Introduction to WCF RIA Services for Silverlight 4 Developers
Introduction to WCF RIA Services for Silverlight 4 DevelopersIntroduction to WCF RIA Services for Silverlight 4 Developers
Introduction to WCF RIA Services for Silverlight 4 Developers
 
Integrated Services for Web Applications
Integrated Services for Web ApplicationsIntegrated Services for Web Applications
Integrated Services for Web Applications
 
Gaelyk - Web Apps In Practically No Time
Gaelyk - Web Apps In Practically No TimeGaelyk - Web Apps In Practically No Time
Gaelyk - Web Apps In Practically No Time
 
CDI and Seam 3: an Exciting New Landscape for Java EE Development
CDI and Seam 3: an Exciting New Landscape for Java EE DevelopmentCDI and Seam 3: an Exciting New Landscape for Java EE Development
CDI and Seam 3: an Exciting New Landscape for Java EE Development
 
JBoss at Work: Using JBoss AS 6
JBoss at Work: Using JBoss AS 6JBoss at Work: Using JBoss AS 6
JBoss at Work: Using JBoss AS 6
 
“What did I do?” - T-SQL Worst Practices
“What did I do?” - T-SQL Worst Practices“What did I do?” - T-SQL Worst Practices
“What did I do?” - T-SQL Worst Practices
 
Building RESTful Services with WCF 4.0
Building RESTful Services with WCF 4.0Building RESTful Services with WCF 4.0
Building RESTful Services with WCF 4.0
 
Building Facebook Applications on Windows Azure
Building Facebook Applications on Windows AzureBuilding Facebook Applications on Windows Azure
Building Facebook Applications on Windows Azure
 
Agile Estimation
Agile EstimationAgile Estimation
Agile Estimation
 
A Cocktail of Guice and Seam, the missing ingredients for Java EE 6
A Cocktail of Guice and Seam, the missing ingredients for Java EE 6A Cocktail of Guice and Seam, the missing ingredients for Java EE 6
A Cocktail of Guice and Seam, the missing ingredients for Java EE 6
 

Dernier

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 

Dernier (20)

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

WF and WCF with AppFabric – Application Infrastructure for OnPremise Services

  • 1. Windows Server AppFabric – Application Infrastructure For On- Premises Services K. Meena 19/04/11
  • 2. Agenda • Why Windows Server AppFabric? – A Developer’s viewpoint • AppFabric – Architecture – Hosting – Persistence – Monitoring – Caching • How Appfabric handles the ‘*- abilities’
  • 3. Agenda • Why Windows Server AppFabric? – A Developer’s viewpoint • AppFabric – Architecture – Hosting – Persistence – Monitoring • How Appfabric handles the ‘*- abilities’
  • 4. What is the developer’s Job ? Business Logic
  • 5. What is the developer’s Job ?
  • 6. Workflow Services in .NET 4 Workflow Service Host Management Endpoint Persistence Persistence Activity Library Behavior (Instances) Receive Send Tracking ... Behavior Monitoring Not Easy to get Configuration Monitoring How to & Hosting started! instrument? (DB based) App Server Support Performance, – Out of the Box Persistence, ! Dashboard + - Abilities??? *Availability, How to script? Scripting Reliability Support
  • 7. Challenges Using WF And WCF Today • “I want to get my WF and WCF services up and running easily - Why doesn’t it just work?” • “It is difficult to monitor and control running WF and WCF services.” • “I wish I had easy to use tools and scripting support.” • “How do I make my services enterprise-ready? ” – RSP: Reliability, Scalability, Performance
  • 8. Requirements • Out of the Box, Centralized support for Server App – Service Hosting Support out of the box! – Managing Instances – Scaling out Distributed Applications – Scripting management tasks – Easier Troubleshooting – Distributed caching
  • 9. Agenda • Why Windows Server AppFabric? – A Developer’s viewpoint • AppFabric – Architecture – Hosting – Persistence – Monitoring – Caching • How Appfabric handles the ‘abilities’
  • 10. Windows Server AppFabric Management Tools IIS Manager Modules PowerShell Services Workflows Persistence Hosting Monitoring Caching Windows Server Windows Server AppFabric .NET Framework Persistence Runtime Databases Monitoring IIS/WAS
  • 11. Which AppFabric? Windows Azure AppFabric Windows Server AppFabric You are Here
  • 12. Agenda • Why Windows Server AppFabric? – A Developer’s viewpoint • AppFabric – Architecture – Hosting – Persistence – Monitoring – Caching • How Appfabric handles the ‘abilities’
  • 13. Hosting • Auto-Start of a Service – Reduce latency for first message – Service initialized before the first call – Hosting protocols for which there are no Listener Adapters • Scenarios – Computer re-start – Protocols like WS-Discovery announcement require applications to be always available – Connect to a DB, read hundreds of rows of data, populate cache on creation
  • 17. Agenda • Why Windows Server AppFabric? – A Developer’s viewpoint • AppFabric – Architecture – Hosting – Persistence – Monitoring – Caching • How Appfabric handles the ‘abilities’
  • 18. Persistence Workflow Service Management Endpoint Windows Server AppFabric Workflow Management Service Instance 123 | data 456 | data 789 | data 011 | data Persistence DB
  • 19. Scenarios • Workflow waits for some external stimulus • Workflow has explicit Delay planned • Workflow has asynchronous tasks, requires correlation support • Workflow instance should be re-activated if the host crashes – Same m/c or different machine • Failed Instances should be recoverable, if possible
  • 20. Scenarios • Persist before Replying • Waiting • m/c or host crash • Instance aborted , recoverable
  • 21. Asynchronous Operations • One way operations using correlation provides simple async messaging infrastructure Workflow Other Send Service Id = 42 Do Work Do Work Do Work Receive Id = 42 Calls Back
  • 22. create correlation 1. Add item (userId 3) 2. Save (userId 3) Receive Persistence DB (Instances) 3. View items (userId 3) 4. Load (userId 3) Receive Instance Key 123 | data 123 | userid 1 5. Best Price (userId 3) 6. Load (userId 3) 456 | data 456 | userid 2 Receive 789 | data 789 | data 789 | userid 3 789 | userid 3 A11 | data A11 | userid4
  • 23. Instance Recovery & Control 1 5 Workflow Management Workflow Service Host Service AppFabric SQL Instance Store 3 App Domain 4 2 instance Host Crash SQL M/c Crash Persistence Unhandled Exception Database – WF Instance aborted
  • 24. What you need to do • Decide how many Persistence Stores are required • Check whether SQL based Instance Store is required/ will suffice – Create a Custom Persistence participant if required • Configure Persistence and Instance Control in AppFabric
  • 25. DEMO Workflow Persistence & Instance Control K. Meena Director SymIndia Training & Consultancy Pvt Ltd
  • 26. Agenda • Why Windows Server AppFabric? – A Developer’s viewpoint • AppFabric – Architecture – Hosting – Persistence – Monitoring – Caching • How Appfabric handles the ‘abilities’
  • 27. Monitoring • Visibility into the operation of services • Scenarios • Health monitoring – “How well is my app running?” • Troubleshooting – “What has failed with my app?” • For every approver, track the time taken , approval status • How long does the credit appraisal workflow take to complete?
  • 28. Monitoring Workflow Service ETW Monitoring Tools WCF Trace Tracking Participant Windows Server AppFabric Event Collector Monitoring Tracking Service Database Profile
  • 29. What You can do? • Decide Monitoring level • Define a Tracking Profile for your service • Create Custom Tracking Records • Decide variables and arguments to track • Use promoted properties to collect business data
  • 30. DEMO Tracking with AppFabric K. Meena SymIndia Training & Consultancy Pvt Ltd Bangalore
  • 31. Agenda • Why Windows Server AppFabric? – A Developer’s viewpoint • AppFabric – Architecture – Hosting – Persistence – Monitoring – Caching • How Appfabric handles the ‘abilities’
  • 32. What is AppFabric Caching? • An explicit, distributed, in-memory application cache for all kinds of data – (CLR objects, rows, XML, Binary data etc.) – Fuse "memory" across machines into a unified cache Caching clients can be across machines or processes, can maintain local cache Clients Access the Cache as if it Unified Cache View was a large single cache Cache Layer distributes data across the various cache nodes
  • 33. App caching Features • Simple Access Patterns – Get/Add/Put/Remove • Tag Searching • Partitioned & Local Client Cache • High Availability • Multiple Concurrency Control Options • ASP.Net Integration • Management & Monitoring • Security • Cache Event Notifications
  • 34. Classify Your Data • Reference Data - unchanging, accessed by multiple clients • Activity data - changing, accessed by a single client • Resource Data – changing, accessed by multiple clients
  • 35. Examine Requirements • Is latency critical? • Is the data secured? • Is the data evictable? • Can Staleness of Data be tolerated? • Should cached data survive m/c failures?
  • 36. Agenda • Why Windows Server AppFabric? – A Developer’s viewpoint • AppFabric – Architecture – Hosting – Persistence – Monitoring – Caching • How Appfabric handles the ‘abilities’
  • 37. Windows Server AppFabric Startup Management Tools Performance – IIS Manager Modules PowerShell Auto Start Services Workflows Persistence Persistence Hosting Hosting Monitoring Caching Caching Windows ServerWindows Server AppFabric .NET Framework Persistence Runtime Databases Monitoring IIS/WAS Performance – Speed of Access Scalability – Cache Cluster, Reliability – Long Running WF Business Logic in multiple m/cs Availability - Recovery from crash Availability – Copies of Cache Scalability – M/c Agnostic WF
  • 38. Startup & Reliabilityy and Availability
  • 39. Scaling a Workflow Service AppFabric Web Server Hosting Services ASP.NET 2) Invoke 3) Persist 1) Make first workflow Pages workflow request to service state after application handling Web Server request ASP.NET Persistence AppFabric Store Pages Hosting 4) Make second Services request to Web Server 6) Load workflow state and handle application request ASP.NET Pages 5) Invoke workflow service
  • 40. Caching with High Availability Cache Cluster Cache Server AppFabric Caching 3) Return value Services of data item X Cache Client from secondary X copy Cached Data Cache Server 2) Access AppFabric Caching 1) Cache server data item X Services holding primary copy of data item X X fails or is shut Cached Data down Primary copies Secondary copies
  • 41. The Complete Picture Cache Cluster AppFabric Caching Services Cache requests spread across Web cache servers User requests Server spread across Web servers AppFabric Hosting Services Service requests spread across middle-tier servers
  • 42. Summary • Life made easy for Developers of WCF and Workflow Services with Windows Server AppFabric • Out of the Box Support for – Hosting WCF and Workflow Services – Configuration – Tool Support – Persistence – Monitoring – Caching – Enterprise Capabilities
  • 43. System Internals: Durable Timer for Workflows Workflow 1 4 Management Delay Service Workflow Service Host SQL Instance Store AppFabric 2 3 SQL Persistence Database
  • 44. Instance Activation 4. Activate App Service Activation Endpoint WMS SMS 5.Activates 1.Create & Subscribe 3. Raised Workflow Service Host for Event Event 8.Load Instance Store 6.Creates instance Instance Store SQL WF Instance Store SQL WF Instance Store 2. Activatable Instance Store Tables Notification 7. Loads Instance State Persistence DB
  • 45. Command Activation App Windows Service host 4.Command WMS Instance Control Endpoint 1. Create Instance Store 3.Command SQL WF Instance Store SQL Instance Store Control Provider 2.Dequeue Instance SQL Control 2. Enqueue Command Queue Control Provider PowerShell Persistence DB
  • 46. Instance Recovery 1 5 Workflow Management Workflow Service Host Service AppFabric SQL Instance Store 3 App Domain 4 2 instance SQL Persistence Database
  • 47. AppFabric Caching API // Create instance of cachefactory (reads appconfig) DataCacheFactory fac = new DataCacheFactory(); // Get a named cache from the factory DataCache catalog = fac.GetCache("catalogcache"); // Simple Get/Put catalog.Put("toy-101", new Toy("Puzzle", .,.)); // From the same or a different client Toy toyObj = (Toy)catalog.Get("toy-101"); // Region based Get/Put catalog.CreateRegion("toyRegion"); // Both toy and toyparts are put in the same region catalog.Put("toy-101", new Toy( .,.), “toyRegion”); Catalog.Put("toypart-100", new ToyParts(…), “toyRegion”); Toy toyObj = (Toy)catalog.Get("toy-101“,"toyRegion");
  • 48. AppFabric Caching Logical Hierarchy AppFabric AppFabric AppFabric AppFabric Caching Caching Caching Caching Service Service Service Service Named Cache : Product Catalog Named Cache : Electronics Inventory Key Payload Tags Region A 121 xxxx “Toy” “Child” 123 yyyy “Toy” “Chair”.. Regions Machine -> Cache Host -> Named Caches -> Regions -> Cache Items -> Objects • Host • Cache Item – Physical processes hosting – Key, Payload (Object ), Tags, TTL, AppFabric Caching instance. Timestamps, Version • Named Caches • Regions – Can span across machines – Physically co-located Container of – Defined in the configuration file Cache Items – May be implicit or explicitly created