检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
"myKeyGenerator"),其中,keyGenerator属性配置的就是自定义缓存key生成器的bean名称。 如果用户没有必须自定义缓存key的需求,可以不配置这两个属性,clientcontrol会自动生成缓存key的,生成的规则是:全路径限定名+方法名+参数的sha256,cli
缓存优先 clientcontrol提供了一种名为缓存优先的功能。当使用缓存优先功能时,在执行目标业务代码时,优先会查询缓存,如果缓存存在则返回缓存结果,如果缓存不存在则执行目标业务代码。 当使用缓存优先时clientcontrol的处理逻辑如下: 读取缓存,判断是否是性能缓存。
找不到createMultiZonClient的bean 问题描述 当使用缓存功能,并且缓存组件使用的redis时,报如图所示的异常。 图1 报错异常 解决方案 使用devspore-dcs连接redis。 devspore-dcs会默认创建一个bean名称为createMult
redis缓存不存在的属性反序列化 问题描述 redis在存入的时候,如果对象中存在is开头的方法,但是又没有具体的属性。那么在存入的时候,会将auth转换为一个属性存入缓存当中,在反序列化的时候就会报反序列化失败。 public boolean isAuth(){ return
Cache配置有两个ttl,一个ttl(可靠性缓存)和一个performanceTtl(性能缓存)。 存在误解这两个为是两个缓存,其实缓存只有一个。 实际给缓存设置的缓存过期时间为ttl配置,缓存存入的时候,连同当前时间一同存入了,取出的时候就可以取出缓存存入时间,通过计算与performa
try)和应答发送前(Exit)调用DevSpore预置的插件,也可以使用自己开发的插件,用于实现统一的操作前认证、鉴权,操作后消息发送、缓存更新、审计等功能。 常用概念 DTO:是一种数据传输对象,主要用于在不同层之间传输数据。 DO:是一种领域对象,用于表示业务领域中的实体或概念。
cache-interruption-duration:此参数是控制关闭缓存的时间,当达到缓存连续失败的次数上限后,clientcontrol会关闭缓存功能这个参数配置的时间,时间到了以后会开启缓存功能。 父主题: 常见问题
SERVICE_FIRST:当一个请求到来时,系统直接执行请求下游服务的操作,请求成功,更新缓存,返回结果。请求失败,尝试获取缓存,如果缓存存在,则返回缓存结果,如果缓存不存在,抛出异常。 缓存管理名称 在“缓存策略”选择对应策略后,显示该字段,且为必填项。 输入缓存管理名称。 缓存管理名称由英文字母和数字及连
clientcontrol中ttl和performanceTtl的具体含义是什么 无法获取本地线程变量 redis缓存不存在的属性反序列化 找不到createMultiZonClient的bean 自定义缓存key读取失败 访问熔断状态的方法时报错异常 clientcontrol注解不生效 自定义降级方法不生效
ourceName字段。 操作示例 新增操作:此示例表示可对名为Order的metaBO新增操作做统一的操作前认证、鉴权,操作后消息发送、缓存更新、审计等。 /** * AddOrder Method * * @param order order * @return Order */
否 Long - 21600 缓存时长(单位:秒),默认6小时。 performance-ttl 否 Long - 600 性能缓存时长(单位:秒),默认10分钟。 type 否 CacheType redis/caffeine nocache 缓存类型。 redis-conne
使用熔断降级功能 缓存优先 服务优先 自定义降级 父主题: 使用场景
务,直接返回,快速释放资源,等到该目标任务情况好转再恢复调用。 降级:当任务失败后,执行的一种补偿任务。 性能缓存:存入缓存的时间到获取缓存的时间差值小于设定阈值的缓存。 开发流程 通过Maven引入需要的依赖。 <dependency> <groupId>com.huaweicloud
熔断器打开,导致方法调用失败 问题描述 熔断器打开,导致方法调用失败。 解决方案 在没有使用自定义降级方法和缓存的时候,原方法如果调用失败会抛出方法原始出的错误。 如果使用了自定义降级方法。 熔断前:自定义降级方法中添加的最后一个异常的参数封装的就是原方法的异常。 熔断后:最后一个异常参数会固定抛出“io
开发时间。 缓存设置。 注意:外部缓存设置为Astro Pro专业版/企业版功能,如果您需要使用此功能,请升级Astro Pro实例版本。 图3 缓存设置 不启用:不对接缓存服务。 REDIS:Redis是一种支持Key-Value等多种数据结构的存储系统,可用于缓存、事件发布或订阅、高速队列等场景。使用华为云DCS
订单系统服务开发示例 业务场景及设计流程说明 在AstroPro中,用户通过业务建模,可生成高可用、高可靠、以及安全稳定的企业级IT应用框架。本入门通过创建一个简单的订单系统,帮助您快速上手AstroPro。 本入门为创建一个简单的订单系统,订单系统中包括用户(User)、订单(
ttl: 60000 #此处配置的是缓存的有效时长 performance-ttl: 30000 #此处配置的是一个性能缓存,时长一般低于ttl, 当缓存的时间小于性能缓存时,clientcontrol会直接把性能缓存作为方法返回值返回 type:
#此处配置的是一个性能缓存,时长一般低于ttl, 当缓存的时间小于性能缓存时,clientcontrol会直接把性能缓存作为方法返回值返回 type: redis 此处配置的是 缓存类型, 支持 redis/caffine 指定具体缓存类型后,用户需要手动引入相关的依赖
demo-caches: # 自定义的缓存策略,可定义多个 ttl: 60000 # 缓存时长,默认6小时 performance-ttl: 30000 # 性能缓存时长,默认10分钟 type: caffeine # 缓存类型,可选值:redis/caffeine
分库数量:设置分库的数量。参考架构选择“数据库分库+分布式缓存”时,需要设置。 分库字段:设置分库的字段名,可单击“添加字段”,按需进行添加。分库对象默认使用根对象主键分库,根对象默认使用自身主键分库。参考架构选择“数据库分库+分布式缓存”时,需要设置。 主键策略:设置主键的生成方法。数据库中的主键,用于唯一标识一条记录。