Windows server appfabric install

A few weeks back I blogged about the Windows Server AppFabric launch (AppFabric is Microsoft’s «Application Server») and a number of folks had questions about how to install and configure the «Velocity» memory cache. It used to be kind of confusing during the betas but it’s really easy now that it’s released.

Here’s the comment:

Have you tried to setup a appfabric (velocity) instance ? I suggest you try & even do a blog post, maybe under the scenario of using it like a memcache for dasblog. I would love to know how to setup it up, it’s crazy hard for what it is.

No problem, happy to help. I won’t do it for dasblog, but I’ll give you easy examples that’ll take about 10 minutes.

Get and Install AppFabric

You can go to http://msdn.com/appfabric and download it directly or just do it with the Web Platform Installer.

Run the installer and select AppFabric Cache. If you’re on Windows 7, you’ll want to install the IIS 7 Manager for Remote Administration which is a little plugin that lets you manage remote IIS servers from your Windows 7 machine.

NOTE: You can also an automated/unattended installation as well via SETUP /i CACHINGSERVICE to just get caching.

The configuration tool will pop up, and walk you through a small wizard. You can setup AppFabric Hosting Services for Monitoring and Workflow Persistence, but since I’m just doing Caching, I’ll skip it.

Windows Server AppFabric Setup Wizard

The Velocity Caching Service needs to know where to get its configuration and it can get it from one of two places — either a database or an XML file on a share. If you use the XML file on a share, you’ll need to make sure the service account has access to the share, etc. I’ll use a database. The config wizard can make it for you as well. Click Next then Finish up the configuration.

Windows Server AppFabric Caching Service configuration Store

Configuring the Configuration Database…

Windows Server AppFabric Configuration Wizard

Ok, let’s start it up and poke around.

Start and Administer your Memory Cluster from PowerShell

Now what? Go to the Start Menu and type in Caching. You’ll have an item called «Caching Administration Windows PowerShell.» This is where you can connect to the cache, check out what’s going on, make new caches, etc. Run it as Administrator.

If you type «get-command *cache*» you’ll see all the different commands available for cache management. I typed start-cachecluster.

C:\> Start-CacheCluster

HostName : CachePort      Service Name            Service Status Version Info
———————      ————            ————— ————
HANSELMAN-W500:22233      AppFabricCachingService UP             1 [1,1][1,1]

Cool, it’s up and running. If you look in the config database (or the XML file if you chose that) you’ll see that I have one machine in my memory cluster. I could have lots and lots, and if I had Windows Server Enterprise I would also have high-availability if one of the nodes went down.

I download the AppFabric Caching Samples and opened the CacheSampleWebApp in Visual Studio. Immediately we notice the two new references we don’t usually see in a web application, Microsoft.ApplicationServer.Caching.Core and .Client.

Remember that for security everything is locked down by default, so you’ll need to grant access to the cache for whatever user you’ll be using to access it. I’m running as «ScottHa» so I’ll run

Grant-CacheAllowedClientAccount scottha

…and you should do the same for whatever account your IIS is running as.

Use Your Memory Cache from ASP.NET

Remember that you can chop up your memory caches into logical buckets (partitions) and a memory cluster can serve more than one application, if you wanted.

Your cache can be hooked up in the web.config or from code (however you like). Here’s a code example helper method where the sample does this manually. This data could come from wherever you like, you just need to tell it a machine to talk to and the portnumber. It’ll automatically connect to the

Caches can also be partitioned. For example, I’m using a named cache called «default» but I could have multiple logically segmented areas like «shoppingcart» and «productcatalog» if I wanted.

using Microsoft.ApplicationServer.Caching;
using System.Collections.Generic;

public class CacheUtil
{
private static DataCacheFactory _factory = null;
private static DataCache _cache = null;

public static DataCache GetCache()
{
if (_cache != null)
return _cache;

//Define Array for 1 Cache Host
List<DataCacheServerEndpoint> servers = new List<DataCacheServerEndpoint>(1);

//Specify Cache Host Details
// Parameter 1 = host name
// Parameter 2 = cache port number
servers.Add(new DataCacheServerEndpoint("mymachine", 22233));

//Create cache configuration
DataCacheFactoryConfiguration configuration = new DataCacheFactoryConfiguration();

//Set the cache host(s)
configuration.Servers = servers;

//Set default properties for local cache (local cache disabled)
configuration.LocalCacheProperties = new DataCacheLocalCacheProperties();

//Disable tracing to avoid informational/verbose messages on the web page
DataCacheClientLogManager.ChangeLogLevel(System.Diagnostics.TraceLevel.Off);

//Pass configuration settings to cacheFactory constructor
_factory = new DataCacheFactory(configuration);

//Get reference to named cache called "default"
_cache = _factory.GetCache("default");

return _cache;
}
}

Once your cache is setup, it’s trivial to use.

m_cache.Add(orderid, order);

and

Order order = (Order)m_cache.Get(orderid);

or updating an existing object:

m_cache.Put(orderid, order);

Check your Caching Statistics

So after adding a bunch of items to the cache, then requesting a bunch back I can go into PowerShell and see what’s going on:

C:\> get-cache

CacheName            [Host]
                     Regions
———            —————
default              [HANSELMAN-W500:22233]
                     Default_Region_0103(Primary)

C:\> Get-CacheStatistics default

Size         : 2493
ItemCount    : 5
RegionCount  : 5
RequestCount : 17
MissCount    : 3

You can use Performance Monitor as there is an imperial buttload of different Performance Counters Available. As I mentioned, you can make different partitions, like «default» or «poopypants» and check the stats on each of those separate, or the cache as a whole:

AppFabric Velocity Caching in PerfMon

And of course, I can recycle my webserver, start it up again and fetch an order and it’s still there. You’ve effectively got a big, partitionable distributed (and optionally highly available) hashtable across multiple machines.

Diagram Explaining what AppFabric looks like as an architecture

Replacing ASP.NET Session State with AppFabric Caching

If you want, in ASP.NET 4 you can also swap out the default in-memory Session State Provider for AppFabric via your web.config. Here’s an example web.config.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>

<!--configSections must be the FIRST element -->
<configSections>
<!-- required to read the <dataCacheClient> element -->
<section name="dataCacheClient"
type="Microsoft.ApplicationServer.Caching.DataCacheClientSection,
Microsoft.ApplicationServer.Caching.Core, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35"
allowLocation="true"
allowDefinition="Everywhere"/>
</configSections>

<!-- cache client -->
<dataCacheClient>
<!-- cache host(s) -->
<hosts>
<host
name="CacheServer1"
cachePort="22233"/>
</hosts>
</dataCacheClient>

<system.web>
<sessionState mode="Custom" customProvider="AppFabricCacheSessionStoreProvider">
<providers>
<!-- specify the named cache for session data -->
<add
name="AppFabricCacheSessionStoreProvider"
type="Microsoft.ApplicationServer.Caching.DataCacheSessionStoreProvider"
cacheName="poopylands"
sharedId="MySharedApp"/>
</providers>
</sessionState>
</system.web>
</configuration>

Resources and Links

Here’s a recent AppFabric caching slidedeck from Ron Jacobs I found useful. More links below. Microsoft Windows Server AppFabric Slides at SlideShare.

As with all things, a little abstraction goes a long way. If you have an existing caching strategy (via EntLib, or whatever) you can almost certainly swap out your internal storage for AppFabric Caching.

Related Links

  • AppFabric on MSDN
    • How to: Get started with a Routing Client (XML)
    • How to: Get started with a Routing Client (Code)
    • Administration with PowerShell
  • Configuring an ASP.NET Session State Provider (Windows Server AppFabric Caching)
  • How to Create a Simple Enterprise Library Cache Manager Provider for Velocity
  • AppFabric Caching Forums
  • AppFabric «Velocity» Caching Documentation
  • Windows Server AppFabric 1.0
    • Windows Server 2003 Distributed Cache Client — while the memory service runs on Windows Server 2008, your existing apps running on Windows Server 2003 can use this cache client to access the Caching Service.
  • Tracing and Caching for Entity Framework available on MSDN Code Gallery

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

About   Newsletter

Hosting By

Provide feedback

Saved searches

Use saved searches to filter your results more quickly

Sign up

Before we can go into the details of these, lets look at typical installation process. Typical installation would involve the following

  • There is a pre-requisite package for installation of Windows Server AppFabric. It requires Web Deploy package that can be downloaded and installed from Microsoft.

  • Requires .NET Framework 4.0 for Server component, but the client component can be installed on .NET Framework 3.5 SP1

  • Hotfix-#980423

  • AppFabric Cache Server (includes the client) Download

  • Install the software packages with admin privileges. Here is a screen showing the installation options you need to select while installing the caching services

  • AppFabric Setup Wizard screenshot

  • On the Server, you would selct the Caching Services, and Caching Administration. On the Client, you generally install the Cache Client option. For our example since my client and server are the same, I have all the three options selected.

This would install the AppFabric software on your machine. The next step in the process is to create a cache cluster and add hosts to it.

Configuration Options for Windows Server AppFabric Distributed Caching Solution

In this section, we will discuss the various configuration options for AppFabric Distributed Caching Solution such as XML Storage Provider, and SQL Storage Provider and the differences between the two.

In this section, we would be talking about the Configuration Options for AppFabric. AppFabric Configuration Involves the following components. Once the installation is complete, go to Start -> All programs -> Windows Server AppFabric -> Configura AppFabric option.

There are two options of where you can store your Cluster Configuration Store Provider:

XML VS SQL Server Configuration Store Provider. These options support specific settings of cluster configuration. Below is mentioned are the available options with each.

XML Storage Provider SQL Server Storage Provider
Storage Provider XML SQL Server Configuration database
Configuration Storage Location UNC share, ex:\\OSHYN\AppFabricShare SQL Server Configuration Database that gets created during configuration
Caching Service Account Local Machine user account, ex: OSHYN\AppFabricUser (machineName\username) Domain Account, ex: oshyn.com\AppFabricDomainUser (domain\accountname)
Lead Hosts\Cluster Management Designated cache hosts (isLeadHost=true) serve as lead hosts that manage the cluster SQL Server manages the Cluster
Suitable Environments Generally suitable for Development environments Generally suitable for QA and Production Environments
High Availability As long as majority of lead hosts are up, the cluster is up. So if you have 4 nodes in the cluster, more than 2 nodes down will bring down the cluster. It also depends on usage of regions and some more conditions apply. Since the SQL server manages cluster, as long as there is one cache server up, the cluster is up and running (it also depends on how the cluster is configured, high availability option, and presence of regions)

Below is a pic that shows the options, this was for a cluster already created using XML Storage provider.

Windows Server AppFabric Configuration Wizard

Once you click next, the next screen would provide you options to change the ports for the cache service. However, general leave the default values. As you can see from the above configuration wizard, you chose «New Cluster» when you are creating a new cache cluster with the cache server being part of that cluster. When you are adding additonal cache servers to the existing cluster, you just chose to «Join Cluster» and it will be part of the existing cluster.

Windows Server AppFabric Configuration - Cache Node

You can enable the checkboxes for configuring firewall rules for AppFabric.

Common Commands for Windows Server AppFabric Distributed Caching Solution

In this section, we will see the various common commands that can be used with Windows AppFabric Distributed Caching Solution.

Let’s talk about the common commands that help in this Distribution Cache Solution Land. All the commands for AppFabric are run in the windows powershell command tool. This can be launched by going to Start -> All Programs -> Windows Server App Fabric -> Caching Administration Windows PowerShell

To get all the commands related to cache
Get-Command *cache*

Get command

To get help on a command
Get-Help New-Cache -full

To create cache with Name «DEV_Cache»
New-Cache -CacheName DEV_Cache -TimeToLive 60 -Expirable true

To get cache
Get-Cache

To get cache host which provides the cache hosts and their status and the cacheserver host name and port on which it is running.
Get-CacheHost

Get Cachehost

To grant access to cache cluster (local and the domain scenarios)
Grant-CacheAllowedClientAccount -Account «NT AUTHORITY\NETWORK SERVICE»
Grant-CacheAllowedClientAccount -Account «domainname\machinename$»

To get client accounts that can access Cache
Get-CacheAllowedClientAccount

To Set cache-cluster security on the server, there are different levels are ProtectionLevel and SecurityMode.
Set-CacheClusterSecurity -ProtectionLevel None -SecurityMode None

To Start cache-cluster
Start-CacheCluster

To Stop cache-cluster
Stop-CacheCluster

To get cache Statistics, which provides details of no of misses, no of hits, no of items in cache, size of the cache and other details. Enter the following command and enter the cachename when prompted for it.
Get-CacheStatistics

To get cache cluster health, this provides the different parameters about state of the cluster like throttle and so on.
Get-CacheClusterHealthThere are several other commands that one can run for the cache cluster. Apart from this, there is a cache administration tool that one can use which allows to access cache through GUI.

Configuring Sitecore with Windows Server AppFabric Distributed Caching Solution and Cache Eviction using Sitecore Events

Now, let’s get into Configuring Sitecore with Windows Server AppFabric Distributed Caching Solution, and how we can model the cache eviction based on CMS publishes by hooking into the Sitecore publish events. In this, we would discuss first integrating the cache cluster that is installed and configured, and then show how we can create publish handler which hooks into the publish events of sitecore and allows us to evict cache on publish of items.

Now let’s get into the usage of the configured cache cluster with Sitecore. Configuration of Sitecore to use AppFabric Solution follows similar steps as configuration of .NET App to use AppFabric. Below is similar object code to help with this integration.

Caching Strategy

public class AppFabricCachePlatformManager {
      private DataCacheFactory _DataCacheFactory = null;
      public DataCacheFactory CacheFactory {
            get
             {
                  return _DataCacheFactory;
             }
            set
             {
                 _DataCacheFactory = value;
             }
      }
      private string _CacheName;
      public string CacheName
      {
           get
           {
               return _CacheName;
           }
           set
           {
              _CacheName = value;
           }
      }
     public AppFabricCachePlatformManager(string CachingHosts, string CacheName)
     {
          this.CacheName = CacheName;
          List<DataCacheServerEndpoint> cacheCluster = new List<DataCacheServerEndpoint>();
          //Assuming you have list of cache servers delimited by “;”
         string[] cacheServers = CachingHosts.Split((new string[] { “;” }), StringSplitOptions.RemoveEmptyEntries);
         if (cacheServers != null)
         {
              foreach (string cacheServer in cacheServers)
              {
                  try
                  {
                      int serverNameLength = cacheServer.IndexOf(“:”);
                      string cacheServerName = cacheServer.Substring(0, serverNameLength);
                      int cacheServerPort = Convert.ToInt32(cacheServer.Substring(serverNameLength + 1));
                      cacheCluster.Add(new DataCacheServerEndpoint(cacheServerName, cacheServerPort));
                  }catch (Exception ex) {
                     throw new Exception(“Configuration key CacheHosts value entry should be of the format server1:port1;server2:port2;server3:port3;”, ex);
                  }
             }
        } 
        DataCacheFactoryConfiguration config = new DataCacheFactoryConfiguration();
        config.Servers = cacheCluster;
        config.LocalCacheProperties = new DataCacheLocalCacheProperties();
       DataCacheSecurity security = new DataCacheSecurity(DataCacheSecurityMode.None,  DataCacheProtectionLevel.None);
        config.SecurityProperties = security;
     }
     public DataCache GetCache(string p_CacheName)
     {
         DataCache cache = null;
         cache = this.CacheFactory.GetCache(p_CacheName);
         return cache;
     }
     public object Get(string p_CacheKey, string p_CacheName)
     {
          this.GetCache(p_CacheName).Get(p_CacheKey);
     }
     public bool Remove(string p_CacheKey, string p_CacheName)
     {
          return this.GetCache(p_CacheName).Remove(p_CacheKey);
     }
 
     public bool Put(string p_CacheKey, object p_CacheValue)
     {
         return this.GetCache(p_CacheName).Put(p_CacheKey, p_CacheValue);
     }
}

Now you can create an instance of this object and be able to integrate the cache cluster on your .NET app.

AppFabricCachePlatformManager appfabric = new AppFabricCachePlatformManager("OSHYN-PN:22233;OSHYN-PN2:22233", "DEV_Cache")

and this would connect to the DEV_Cache on the cache cluster. Now an object «product1» can be stored in cache as follows using the Put statement:

appfabric.Put("ProductKey_1", product1);

and this can be easily retrieved again as:

appfabric.Get("ProductKey_1");

Now assume this Product is an item being managed in Sitecore CMS. As such if the item content updates, then we need to flush this item from cache and and put it in cache the updated object. This is handled by hooking up into the Sitecore publish event and making sure this item is published.

Eviction Strategy

The eviction strategy consits of clearing the item from cache when the item gets updated on sitecore and is published. We can add an event handler for publish event and clear cache on publish. Creation of the Publish Handler is as follows:

namespace Company.Domain.Sitecore.Publishing
{
         public class PublishHandler
         {
               public void OnItemPublished(object sender, EventArgs args)
               {
                    global::Sitecore.Diagnostics.Log.Debug(String.Format(“Started Publish handler OnItemPublished”));
                    if (args == null)
                    {
                         global::Sitecore.Diagnostics.Log.Debug(String.Format(“Finished Publish handler OnItemPublished args=null”));
                        return;
                     }

                     global::Sitecore.Publishing.Pipelines.PublishItem.ItemProcessedEventArgs theArgs = args as global::Sitecore.Publishing.Pipelines.PublishItem.ItemProcessedEventArgs; 
                     global::Sitecore.Data.Items.Item currentItem = theArgs.Context.PublishHelper.GetSourceItem(theArgs.Context.ItemId); 
                     if ((currentItem != null) && (currentItem.Paths != null) && (currentItem.Paths.IsContentItem))
                     {
                             //Get the product template  
                             string productTemplateGUID = “{AB9791FE-EF31-4BC5-D9EF-8B886C928ACB}”;
                             global::Sitecore.Data.ID productTemplateID = new global::Sitecore.Data.ID(productTemplateGUID);
                             global::Sitecore.Diagnostics.Log.Debug(String.Format(“productTemplateID is not null”)); 

                             if (!currentItem.TemplateID.IsNull && !productTemplateID.IsNull && currentItem.TemplateID == productTemplateID)
                            {
                                  global::Sitecore.Diagnostics.Log.Debug(String.Format(“Product Item with ID={0} has been published”, currentItem.ID.ToString())); 
                                   //assuming the key is build using sitecore itemid whne storing in cache layer 
                                  //if there is some external key that you are using to store in cache, 
                                  //then you need to have a Dictionary mapping of sitecore item ids to that 
                                  //external key and use that instead of currentItem.ID.ToString();
                                  CacheManager.Instance.CachePlatform.Remove(“ProductKey_” + currentItem.ID.ToString()); 
                                 global::Sitecore.Diagnostics.Log.Debug(String.Format(“Product Item with ID={0} has been removed from titles cache”, currentItem.ID.ToString()));
                              }
                      } 
                     global::Sitecore.Diagnostics.Log.Debug(String.Format(“Finished Publish handler OnItemPublished”));
             }
      }
}

Modifying the web.config to take trigger this handler on publish event. In the «<events>» section of the web.config of sitecore, add this:

<event name=“publish:itemProcessed” help=“Receives an argument of type ItemProcessedEventArgs (namespace: Sitecore.Publishing.Pipelines.PublishItem)” >
            <handler type=“Company.Domain.Sitecore.Publishing.PublishHandler, CompanyDLL” method=“OnItemPublished” />
</event>

This would trigger the publish handler once publish engine finishes processing the item on publish.

In this way, you can check if product item that is cached is modified and can evict it from cache when the item gets updated and published on the sitecore cms side. This event hook up methodology can be used in other forms of events exposed by sitecore.

Windows Server AppFabric

Windows Server AppFabric is a set of integrated technologies that make it easier to build, scale and manage Web and composite applications that run on IIS.

    • Windows Server AppFabric is a set of integrated technologies that make it easier to build, scale and manage Web and composite applications that run on IIS. Windows Server AppFabric targets applications built using ASP.NET, Windows Communication Foundation (WCF), and Windows Workflow Foundation (WF).
      It provides out-of-the-box capabilities for you to easily build and manage composite applications, including:
      • Enhanced design and development tools in Visual Studio to build rich composite applications
      • Management and monitoring of services and workflows via integration with IIS Manager and Windows PowerShell
      • Distributed in-memory application cache to improve application performance
      Windows Server AppFabric allows developers to build their next-generation composite applications, and for administrators to host and manage them. It integrates technologies previewed as code name «Dublin» and code name «Velocity».

System Requirements

Operating Systems: Windows 7, Windows Server 2008, Windows Server 2008 R2, Windows Vista

    • Windows Server AppFabric can be installed on the following operating systems:
      • Windows 7
      • Windows Server 2008 R2
      • Windows Server 2008 Service Pack 2
      • Windows Vista Service Pack 2
    • Supported Architectures:
      • 32-bit (x86)
      • 64-bit (x64)
    • Hardware requirements:
      • Minimum Hard Disk Space: 2GB
      • Computer with an Intel Pentium-compatible CPU that is 1 GHz or faster for single processors; 900 MHz or faster for dual processors; or 700 MHz or faster for quad processors.
    • Prerequisite software:
        Install the following pre-requisite software. If this software is not already installed, install in the order presented below:
      • All features of Windows Server AppFabric require a .NET Framework version to function. The specific version required is dependent on which features you wish to use:
        • Hosting services require Microsoft .NET Framework 4
        • Hosting administration requires Microsoft .NET Framework 4
        • Caching service requires Microsoft .NET Framework 4 and optionally requires Microsoft .NET Framework 3.5 Service Pack 1
        • Cache client requires either Microsoft .NET Framework 4 or Microsoft .NET Framework 3.5 Service Pack 1
        • Cache administration requires Microsoft .NET Framework 4
      • Internet Information Services (IIS) 7
        • Internet Information Services (IIS) 7 Hotfix #980423
      • IIS Web Deployment tool
      • Windows PowerShell 2.0 (final version) (this is not required for Windows 7 and Windows Server 2008 R2 users)

Installation Instructions

    • Upgrade from Windows Server AppFabric Beta 2 Refresh and Windows Server AppFabric RC is supported. However upgrade from older versions of Windows AppFabric (Beta 1 and Beta 2) is not supported. Before starting the installation, uninstall older versions (pre-Beta 2 refresh) of Windows Server AppFabric, then install pre-requisite software. It is important to uninstall Windows Server AppFabric Beta 1, Windows Server AppFabric Beta 2 before uninstalling .NET 4 Beta 2 or .NET 4 RC respectively and installing the final version of .NET 4. For more information and a work-around see the release notes.
    • Click the Download button to download the appropriate file for your operating system and architecture. See the table in the additional information section to select the correct file.
    • Choose to Save the file to your hard drive.
    • Find the file on your hard drive. Right-click on it and select ‘Run as Administrator’. Click on ‘Yes’ when prompted.
    • The installation wizard will start; follow the instructions to complete the installation. For more information on how to use the wizard to configure your system consult the getting started guide.
    • NOTE: While using Windows Server AppFabric, you may configure your server, site or your application to use some AppFabric’s specific features. Upon uninstall of AppFabric, however, this may cause your applications to be in a non-functional or undesirable state. Reinstalling a later build of AppFabric will address this issue, or alternatively we have created an uninstall cleanup utility that will automatically restore the state of your applications.This readme describes the use of the uninstall tool that is downloadable here.

Related Resources

  • Release Notes
  • Samples
  • Installation Guide
  • Recommended Updates

Home
> AppFabric, ASP.NET > Installing AppFabric on Windows Server 2012

Here is the step by step guide to installing AppFabric on Windows Server 2012. If you were to install the executable straightaway, it will fail as there are some dependencies

This is what you will see when you simply install AppFabric on a clean install of Windows Server

image

image

To properly setup AppFabric, you need to install the pre-requisites (IIS and ASP.NET 3.5) as well as enable automatic windows update.

IF you want high availability, you will need to install on Enterprise and above versions of windows server

  1. Start up Server Manager and click Add roles and features
    image

  2. Install Web Server (IIS)
    image

  3. Install ASP.NET 3.5. You will need the windows server DVD mounted in the dvd drive or else use the alternative path and point to the sources\sxs folder of the windows server dvd
    image

  4. Enable Windows Update
    image

  5. Download Windows Server AppFabric here
  6. Double click the downloaded executable and click next to everything, you might want to install the whole suite just to play safe
  7. Installation should be successful and you will be greeted with the following screen
    image

  8. If you see the exclamation mark (as shown in the image), goto windows update and do a windows update
  9. Ensure Remote Registry is enabled
    image

Set Remote Registry to Automatic

Search for Caching Administrator, Right click and run as administrator

Get-CacheStatistics [cachename]

Size              : 470016
ItemCount         : 1
RegionCount       : 1
RequestCount      : 37
ReadRequestCount  : 7
WriteRequestCount : 7
MissCount         : 1
IncomingBandwidth : 1671031
OutgoingBandwidth : 1202058

AppFabric

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Набор видео кодеков для windows 10
  • Возврат компьютера в исходное состояние windows 10 сколько времени занимает
  • Master touch mt500usb driver windows 7 32
  • Поиск новых устройств windows 10
  • Epson l222 driver windows 10