zoukankan      html  css  js  c++  java
  • [公告][重要]Senparc.Weixin v4.9.0 & Senparc.Weixin.MP v14.3.104更新说明

    本次升级除了更新了发红包接口等接口之外,最重要的是重构了缓存模块。

    如何升级?

    之前的缓存是为Container设计的,原先的ContainerCacheStrategy继承自BaseCacheStragegy。这次更新之后,在ContainerCacheStrategy和BaseCacheStragegy中间加了一层ObjectCacheStrategy,用于处理所有Key为String类型的缓存(Value为Object类型)。

    Sample中的代码已经进行了同步的修改。

    所以如果您是在以前的版本上进行升级,必须要对代码做如下修改:

    1、 ContainerCache缓存策略不再需要注册,改为对ObjectCache缓存策略的注册,例如:

    原先的Container注册方法为(Redis为例):

    CacheStrategyFactory.RegisterContainerCacheStrategy(() => RedisContainerCacheStrategy.Instance);//Redis

    现在改为:

    CacheStrategyFactory.RegisterObjectCacheStrategy(() => RedisObjectCacheStrategy.Instance);//Redis

    注意:大部分的升级内容,只要编译一次就可以根据编译器报错找到修改的地方,但是上述lambda表达式中的 RedisObjectCacheStrategy ,即使保留原来的 RedisContainerCacheStrategy 也不会在编译时报错,所以需要格外注意!

    2、CacheStrategyFactory.GetContainerCacheStrategyInstance()方法已经废除,现改为:

    CacheStrategyFactory.GetObjectCacheStrategyInstance(); 返回的是ObjectCacheStrategy,不再是ContainerCacheStrategy

     用法:

    var objectCacheStrategy = CacheStrategyFactory.GetObjectCacheStrategyInstance();

    现在的ContainerCacheStrategy实例可以从objectCacheStrategy .ContainerCacheStrategy获得,例如:

    原先的containerCacheStrategy获取方法为:

    CacheStrategyFactory.GetContainerCacheStrategyInstance()
    现在改为:
    CacheStrategyFactory.GetObjectCacheStrategyInstance().ContainerCacheStrategy

    升级说明

    本次更新之后看似某些部分缓存初始化的代码会更长一些(多数存在于SDK内部,开发者不会感觉到,所有的接口调用方法没有任何改变),但是对于SDK的扩展能力来说是一个新的里程碑:以前缓存策略专为Container设计(或者说Container优先),而目前的缓存策略已经可以支持几乎所有的缓存类型!这次升级为接下来SDK更多的功能升级提供了强有力的底层保证,尤其下一步包括小程序在内的实时互动开发提前奠定基础。

  • 相关阅读:
    Restful API
    事件冒泡
    DOM性能
    获取dom节点的所有子节点
    获取dom节点的父节点
    深拷贝
    Dropdown下拉菜单
    Breadcrumb面包屑
    【vue】----生产环境去除cosole.*
    刷leetcode时,重新认识LinkedList实现栈、队列或者双端队列
  • 原文地址:https://www.cnblogs.com/szw/p/5994480.html
Copyright © 2011-2022 走看看