当前位置: 首页 > news >正文

沈阳造价信息网官网抖音seo怎么做

沈阳造价信息网官网,抖音seo怎么做,python培训学校,做图片网站侵权吗Caffeine Caffeine是一种基于Java的高性能缓存库,它提供了可配置、快速、灵活的缓存实现。Caffeine具有以下特点: 高性能:Caffeine使用了一些优化技术,如基于链表的并发哈希表和无锁算法,以提供卓越的读写性能。容量…

Caffeine

Caffeine是一种基于Java的高性能缓存库,它提供了可配置、快速、灵活的缓存实现。Caffeine具有以下特点:

  • 高性能:Caffeine使用了一些优化技术,如基于链表的并发哈希表和无锁算法,以提供卓越的读写性能。
  • 容量控制:Caffeine支持多种容量控制策略,如基于大小、基于权重和基于时间等,可以根据需求设置缓存的最大大小或最大权重,并在缓存达到限制时进行逐出策略。
  • 过期策略:Caffeine提供了各种内置的过期策略,如基于访问时间、基于写入时间和定时过期等,在缓存中存储的对象可以根据这些策略进行自动过期。
  • 异步加载:Caffeine支持异步加载数据,当缓存中不存在某个键对应的值时,可以通过自定义的Loader接口来异步加载数据。
  • 统计和监听:Caffeine提供了缓存统计功能,可以获取缓存的命中率、缓存项数量等信息,还支持注册缓存监听器,在缓存发生变化时触发相应的事件。

序列化

Caffeine缓存不涉及任何序列化,因此目标缓存对象不需要实现Serializable接口。若涉及多级缓存或者多种缓存共用,其它需要网络传输或者持久化的缓存需要序列化,Caffeine尽管也使用实现序列化的实体类,但是不做序列化操作。

不需要序列化,降低了缓存使用难度。

引入依赖

<dependency><groupId>com.github.ben-manes.caffeine</groupId><artifactId>caffeine</artifactId>
</dependency>

全局配置

spring:cache:type: caffeine

缓存配置

配置缓存管理器:多CacheName配置。

public interface CacheNameTimeConstant {String CACHE_DEFAULT = "CACHE_DEFAULT";String CACHE_10SECS = "CACHE_10SECS";String CACHE_60SECS = "CACHE_60SECS";
}

同一个CacheManager配置多个CacheName,此处仅配置过期时间的差异,其余配置可自由增加。

import com.example.demo.util.CacheNameTimeConstant;
import com.github.benmanes.caffeine.cache.Caffeine;
import org.springframework.cache.CacheManager;
import org.springframework.cache.caffeine.CaffeineCache;
import org.springframework.cache.support.SimpleCacheManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;@Configuration
public class CaffeineConfig{@Beanpublic CacheManager caffeineCacheManager() {SimpleCacheManager cacheManager = new SimpleCacheManager();List<CaffeineCache> caches = new ArrayList<>();caches.add(new CaffeineCache(CacheNameTimeConstant.CACHE_5SECS,Caffeine.newBuilder().expireAfterWrite(5, TimeUnit.SECONDS).build()));caches.add(new CaffeineCache(CacheNameTimeConstant.CACHE_10SECS,Caffeine.newBuilder().expireAfterWrite(10, TimeUnit.SECONDS).build()));caches.add(new CaffeineCache(CacheNameTimeConstant.CACHE_30SECS,Caffeine.newBuilder().expireAfterWrite(30, TimeUnit.SECONDS).build()));cacheManager.setCaches(caches);return cacheManager;}
}

controller


@RestController
@RequestMapping("/test")
public class TestController {@Resourceprivate StuMapper stuMapper;/*** 添加缓存*/@GetMapping("/selectStu/{id}")@Cacheable(value = CacheNameTimeConstant.CACHE_30SECS,key="#id")public Student selectStu(@PathVariable Integer id){return stuMapper.selectById(id);}/*** 更新缓存*/@PostMapping("/updateStu")@CachePut(value = CacheNameTimeConstant.CACHE_30SECS,key = "#student.id")public Student updateStu(Student student){if (stuMapper.updateById(student) > 0) {return stuMapper.selectById(student.getId());}return  null;}/*** 删除缓存*/@PostMapping("/deleteStu/{id}")@CacheEvict(value = CacheNameTimeConstant.CACHE_30SECS,key = "#id")public String deleteStu(@PathVariable Integer id){return stuMapper.deleteById(id) > 0 ? "删除成功" : "删除失败";}}

启动类

添加@EnableCaching注解

@SpringBootApplication
@EnableTransactionManagement
@EnableCaching
public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);System.out.println("启动成功");}@Beanpublic MessageConverter jsonMessageConverter(){return new Jackson2JsonMessageConverter();}}

测试

第一次查询,是走数据库的

第二次查询不走数据库,直接返回缓存,但是30s后过期

 更新缓存

再次查询数据时,从更新的缓存获取

http://www.hkea.cn/news/924985/

相关文章:

  • 中国做美国酒店的网站好竞价托管收费标准
  • 网站开发与设计静态网页源代码站长之家app下载
  • 松原做网站app运营推广是干什么
  • 做简单的网站链接2024新闻热点摘抄
  • 百度网站站长环球网疫情最新
  • 颍上做网站西安seo网站关键词优化
  • 有没有兼职做设计的网站吗知名网络软文推广平台
  • 数据百度做网站好用吗米拓建站
  • 网站维护运营怎么做搜索引擎优化通常要注意的问题有
  • 圆梦科技专业网站建设恶意点击软件有哪些
  • 如何做vip电影解析网站竞价恶意点击器
  • 开发简单小程序公司深圳网站优化哪家好
  • 网站开发劣势搜索引擎排名优化
  • 桂林网站优化公司企业网络营销顾问
  • 上海外贸出口代理公司排名搜索引擎优化的主要工作有
  • 一般做企业网站需要什么资料广告咨询
  • 广州网站建设兼职网站为什么要做seo
  • 中企动力官网 网站怎么在平台上做推广
  • 教育培训网站建设方案广告宣传费用一般多少
  • 计算机网站设计论文营销排名seo
  • 源码资源国内专业seo公司
  • 丽水微信网站建设报价免费精准客源
  • 广东建设工程中标公示网站google搜索引擎优化
  • 南宁老牌网站建设公司正版google下载
  • 网站做信用认证有必要吗微信朋友圈推广平台
  • 电子政务网站建设要求百度关键词规划师
  • 博客网站开发毕设免费大数据分析网站
  • 深圳教育平台网站建设好消息疫情要结束了
  • 国外设计文章的网站淘宝代运营靠谱吗
  • 市桥网站建设sem论坛