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

建设资格注册管理中心网站大学生个人简历模板免费

建设资格注册管理中心网站,大学生个人简历模板免费,自己怎么做外贸网站空间,一级做ae视频直播可以吗多少钱1. Caffeine 简介 Caffeine 是一个基于 Java 8 的高性能本地缓存库#xff0c;由 Ben Manes 开发#xff0c;旨在替代 Google Guava Cache#xff0c;提供更优的缓存策略、更高的吞吐量和更灵活的配置。 核心优势 ✅ 卓越的性能#xff1a;采用优化的数据结构#xff0…1. Caffeine 简介 Caffeine 是一个基于 Java 8 的高性能本地缓存库由 Ben Manes 开发旨在替代 Google Guava Cache提供更优的缓存策略、更高的吞吐量和更灵活的配置。 核心优势 ✅ 卓越的性能采用优化的数据结构如 Window TinyLFU 淘汰算法减少锁竞争提升并发访问效率。 ✅ 灵活的缓存策略支持基于大小、时间、权重等多种淘汰机制。 ✅ 丰富的功能自动刷新、异步加载、批量操作等高级特性。 ✅ 无缝集成 Spring与 Spring Cache 完美结合轻松替换 Redis 或 Ehcache。 2. Caffeine 核心机制 2.1 缓存淘汰策略 Caffeine 提供多种缓存淘汰策略防止内存无限增长 策略方法说明基于大小maximumSize(long)限制缓存最大条目数基于权重maximumWeight(long) weigher()根据条目权重限制缓存基于时间expireAfterWrite / expireAfterAccess写入/访问后过期手动淘汰invalidate(key) / invalidateAll()主动移除缓存 2.2 缓存加载方式 Caffeine 支持 同步加载 和 异步加载 // 同步加载阻塞 LoadingCacheKey, Value cache Caffeine.newBuilder().build(key - fetchFromDB(key));// 异步加载非阻塞 AsyncLoadingCacheKey, Value asyncCache Caffeine.newBuilder().buildAsync((key, executor) - CompletableFuture.supplyAsync(() - fetchFromDB(key), executor));2.3 自动刷新机制 refreshAfterWrite 允许缓存条目在写入后一段时间自动刷新异步不阻塞请求 LoadingCacheString, Data cache Caffeine.newBuilder().refreshAfterWrite(1, TimeUnit.MINUTES) // 1分钟后访问时触发刷新.build(this::loadDataFromDB);注意刷新时返回旧值后台异步加载新值适合高并发场景。 3. 代码实战Caffeine Spring Boot 3.1 基础配置 Configuration EnableCaching public class CacheConfig {Beanpublic CaffeineObject, Object caffeineConfig() {return Caffeine.newBuilder().maximumSize(1000) // 最大1000条.expireAfterWrite(10, TimeUnit.MINUTES) // 10分钟过期.refreshAfterWrite(1, TimeUnit.MINUTES); // 1分钟后自动刷新}Beanpublic CacheManager cacheManager(CaffeineObject, Object caffeine) {CaffeineCacheManager cacheManager new CaffeineCacheManager();cacheManager.setCaffeine(caffeine);return cacheManager;} }3.2 业务层使用 Service public class UserService {Cacheable(value users, key #id) // 缓存名称为 userspublic User getUserById(Long id) {return userRepository.findById(id).orElse(null);}CacheEvict(value users, key #id) // 删除缓存public void deleteUser(Long id) {userRepository.deleteById(id);} }4. 高级用法 4.1 多级缓存Caffeine Redis Bean public CacheManager cacheManager(RedisConnectionFactory redisConnectionFactory,CaffeineObject, Object caffeine ) {// 本地缓存CaffeineCacheManager caffeineCacheManager new CaffeineCacheManager();caffeineCacheManager.setCaffeine(caffeine);// Redis 缓存RedisCacheManager redisCacheManager RedisCacheManager.builder(redisConnectionFactory).cacheDefaults(RedisCacheConfiguration.defaultCacheConfig()).build();// 组合缓存先查本地再查Redisreturn new CompositeCacheManager(caffeineCacheManager, redisCacheManager); }4.2 批量操作优化 public MapLong, User batchGetUsers(ListLong userIds) {// 批量查询缓存MapLong, User cachedUsers cache.getAll(userIds);// 查找未命中的IDListLong missingIds userIds.stream().filter(id - !cachedUsers.containsKey(id)).collect(Collectors.toList());if (!missingIds.isEmpty()) {// 从DB加载并更新缓存MapLong, User dbUsers userRepository.batchFindByIds(missingIds);cache.putAll(dbUsers);cachedUsers.putAll(dbUsers);}return cachedUsers; }5. 注意事项 最佳实践 5.1 缓存穿透问题 问题恶意请求不存在的 key导致频繁查询数据库。 解决方案 .build(key - {User user fetchFromDB(key);if (user null) {return new NullValue(); // 缓存空对象}return user; });5.2 缓存雪崩 问题大量缓存同时失效导致数据库压力激增。 解决方案 .expireAfterWrite(10 ThreadLocalRandom.current().nextInt(5), TimeUnit.MINUTES) // 随机过期时间5.3 内存监控 Caffeine 提供统计信息 .recordStats() // 启用统计CacheStats stats cache.stats(); System.out.println(命中率: stats.hitRate()); System.out.println(加载次数: stats.loadCount());5.4 最佳实践 ✔ 合理设置缓存大小避免 OOM如 maximumSize(10000)。 ✔ 结合 TTL 自动刷新保证数据新鲜同时避免阻塞请求。 ✔ 分布式环境使用多级缓存本地缓存 Redis减少网络开销。 ✔ 监控缓存命中率优化缓存策略避免缓存失效风暴。 6. 总结 Caffeine 是 Java 生态中最强大的本地缓存库之一适用于 高频访问的只读数据如配置、用户信息高并发场景如电商商品详情页计算成本高的操作如复杂查询、API 调用 通过合理的配置refreshAfterWrite expireAfterWrite和最佳实践防穿透、防雪崩可以极大提升系统性能。 推荐组合 单机应用纯 Caffeine分布式系统Caffeine Redis多级缓存 附录官方资源 GitHub: CaffeineSpring Cache Caffeine 希望这篇深度解析能帮助你掌握 Caffeine 的核心机制和最佳实践
http://www.pierceye.com/news/626654/

相关文章:

  • 湖州建设网站制作手机网站登录模板
  • 重庆网站制作技术wordpress获取特定尺寸特征图像
  • 展示型网站建设标准网络组建视频
  • 怎么用wordpress建手机网站网络管理网站策划书
  • 网站空间位置河南郑州百姓网
  • 云服务器可以用来做网站么网站建设短期培训
  • 做网站的费属于什么费用昆山智能网站开发
  • 西安网站制作南昌公司企业微信app下载安装官方版
  • 网站建设情况总结个人静态网页学生作业
  • 手机网站一键分享到微信asp.net ftp发布网站
  • 重庆网站制作公司妇联加强网站平台建设
  • php mysql网站开发全程实例.pdf网站的视频怎么下载
  • 海南医院网站建设软件工程公司排名
  • 微信公众号怎么分享wordpress网站优化搜索
  • 永定门网站建设佛山网红打卡景点大全排名榜
  • 网站建设模板推广重庆网络问政平台华龙网
  • 今科云平台网站建设技术中国电力建设股份部官方网站
  • 门户网站的三大基本特征vs2017做的网站如何发布
  • 怎么样自己做网站接订单网站建设和的注意事项
  • 月付商城网站建站男装商城网站建设
  • 建网站的步骤及方法php做的网站怎么运行
  • 英德市住房和城乡建设局手机网站html5手机网站模板下载
  • 网站建设手机建设网站 系统占用空间
  • 网站没内容网站域名.xin
  • 布吉建设网站网站是怎么制作出来的
  • 有赞网站开发凡科建站网
  • html5商业网站开发北大青鸟wordpress免费模版
  • 网站建设及那个科目提升网站页面打开速度
  • 直接玩的网页游戏关键词优化工具有哪些
  • 单页面网站如何优化引流四川网站建设贴吧