• 微软分布式缓存 AppFabric(Velocity)-开发篇(四)缓存通知


    要使用缓存通知,要先配置缓存的通知服务已开启,在PowerShell工具中使用:Set-CacheConfig命令将要开启通知的缓存通知开启。

    添加缓存通知须要两个步骤:

    1.创建一个可以被缓存通知调用的方法,这个方法带有一个或多个通知类型选项。这个函数的参数必须和DataCacheNotificationCallback委托的参数相同。

    2.用DataCache实例的 AddCacheLevelCallback, AddRegionLevelCallbackAddItemLevelCallback其中的一个方法添加一个回调。

    Step 1.DataCacheNotificationCallback参数

            //method invoked by notification "ndCacheLvlAllOps" 
            public void myCacheLvlDelegate(string myCacheName,string myRegion, string myKey,DataCacheItemVersion itemVersion,
                DataCacheOperation OperationId,DataCacheNotificationDescriptor nd)
            {
                //display some of the delegate parameters
                Console.WriteLine("A cache-level notification was triggered!");
                Console.WriteLine("    Cache: " + myCacheName);
                Console.WriteLine("    Region: " + myRegion);
                Console.WriteLine("    Key: " + myKey);
                Console.WriteLine("    Operation: " + OperationId.ToString());
                Console.WriteLine();
            }

    Step 2.添加回调

                DataCache dataCache = factory.GetCache("FirstCache");
                //specify all possible item and region operations
                DataCacheOperation allCacheOperations = DataCacheOperation.AddItem |
                    DataCacheOperation.ReplaceItem |
                    DataCacheOperation.RemoveItem |
                    DataCacheOperation.CreateRegion |
                    DataCacheOperation.ClearRegion |
                    DataCacheOperation.RemoveRegion;
    
                //add cache-level notification callback 
                //all cache operations from a notifications-enabled cache
                DataCacheNotificationDescriptor ndCacheLvlAllOps = dataCache.AddCacheLevelCallback(allCacheOperations, myCacheLvlDelegate);

    示例代码下载:VolocityDemo.rar

  • 相关阅读:
    js的同步与异步
    单体应用SSM
    Spring 事务管理简介
    Linux
    Docker
    spring Cloud Netflix
    平台即服务
    MySQL InnoDB 索引组织表 & 主键作用
    Innodb Double Write
    Laravel 5.6: Specified key was too long error
  • 原文地址:https://www.cnblogs.com/xuf22/p/2145739.html
Copyright © 2020-2023  润新知