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

网站上的办公网站怎么做/seo技术优化服务

网站上的办公网站怎么做,seo技术优化服务,做citation的网站,如何做黑客攻击网站在 Java 中,常用的本地缓存实现主要有以下几种,以下是它们的代码示例及适用场景: 一、‌使用 ConcurrentHashMap 实现简单缓存‌ 适合轻量级、无需复杂淘汰策略的场景。 import java.util.concurrent.ConcurrentHashMap;public class Simp…

在 Java 中,常用的本地缓存实现主要有以下几种,以下是它们的代码示例及适用场景:

一、‌使用 ConcurrentHashMap 实现简单缓存‌

适合轻量级、无需复杂淘汰策略的场景。

import java.util.concurrent.ConcurrentHashMap;public class SimpleCache<K, V> {private final ConcurrentHashMap<K, V> cache = new ConcurrentHashMap<>();public V get(K key) {return cache.get(key);}public void put(K key, V value) {cache.put(key, value);}public void remove(K key) {cache.remove(key);}public void clear() {cache.clear();}
}

二、‌Guava Cache(推荐)‌

Google 提供的缓存库,支持过期策略、大小限制等。

2.1. 添加依赖(Maven):

<dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>31.1-jre</version>
</dependency>

2.2. 代码示例:

import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
import java.util.concurrent.TimeUnit;public class GuavaCacheExample {public static void main(String[] args) {// 创建缓存,设置最大容量100,写后1分钟过期Cache<String, String> cache = CacheBuilder.newBuilder().maximumSize(100)                     // 最大条目数.expireAfterWrite(1, TimeUnit.MINUTES) // 写入后过期时间.build();// 写入数据cache.put("key1", "value1");// 读取数据String value = cache.getIfPresent("key1");System.out.println("Value: " + value); // 输出 Value: value1// 删除数据cache.invalidate("key1");}
}

三、‌Caffeine(高性能替代)‌

Guava Cache 的现代版,性能更高,推荐 Java 8+ 使用。

3.1. 添加依赖(Maven):

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

3.2. 代码示例:

import com.github.benmanes.caffeine.cache.Cache;
import com.github.benmanes.caffeine.cache.Caffeine;
import java.util.concurrent.TimeUnit;public class CaffeineCacheExample {public static void main(String[] args) {// 创建缓存,设置最大容量500,读后30秒过期Cache<String, String> cache = Caffeine.newBuilder().maximumSize(500).expireAfterAccess(30, TimeUnit.SECONDS).build();// 写入数据cache.put("key1", "value1");// 读取数据(若不存在则返回null)String value = cache.getIfPresent("key1");System.out.println("Value: " + value); // 输出 Value: value1// 删除数据cache.invalidate("key1");}
}

四、‌Ehcache(支持持久化)‌

功能更强大,支持磁盘持久化、分布式缓存等。

4.1. 添加依赖(Maven):

<dependency><groupId>org.ehcache</groupId><artifactId>ehcache</artifactId><version>3.10.8</version>
</dependency>

4.2. 代码示例:

java
Copy Code

import org.ehcache.Cache;
import org.ehcache.config.builders.CacheConfigurationBuilder;
import org.ehcache.config.builders.ResourcePoolsBuilder;
import org.ehcache.config.units.MemoryUnit;
import org.ehcache.core.config.DefaultConfiguration;
import org.ehcache.core.spi.service.LocalPersistenceService;
import org.ehcache.impl.config.persistence.DefaultPersistenceConfiguration;
import org.ehcache.impl.persistence.DefaultLocalPersistenceService;public class EhcacheExample {public static void main(String[] args) {// 配置持久化到磁盘LocalPersistenceService persistenceService = new DefaultLocalPersistenceService(new DefaultPersistenceConfiguration(new File("cache-data")));// 创建缓存管理器DefaultConfiguration config = new DefaultConfiguration(persistenceService, ResourcePoolsBuilder.heap(100).build());Cache<String, String> cache = CacheConfigurationBuilder.newCacheConfigurationBuilder(String.class, String.class,ResourcePoolsBuilder.newResourcePoolsBuilder().heap(100, MemoryUnit.MB)    // 堆内内存.disk(1, MemoryUnit.GB)     // 磁盘持久化).buildConfig(String.class);// 写入数据cache.put("key1", "value1");// 读取数据String value = cache.get("key1");System.out.println("Value: " + value); // 输出 Value: value1// 关闭资源persistenceService.close();}
}

五、‌缓存选择建议‌

场景‌ ‌推荐方案‌ ‌优势‌
简单键值对、无过期策略 ConcurrentHashMap 无依赖,轻量级
需要淘汰策略、过期时间 Guava Cache / Caffeine 功能丰富,易集成
大数据量、高性能需求 Caffeine 高吞吐量,低延迟
需要持久化到磁盘 Ehcache 支持磁盘存储,适合重启恢复数据
六、‌注意事项‌
缓存一致性‌:
如果数据源更新频繁,需通过 invalidate 手动清除旧缓存或设置短过期时间。
内存管理‌:
设置合理的 maximumSize 或 expireAfterWrite,避免内存溢出(OOM)。
并发安全‌:
Guava/Caffeine/Ehcache 均为线程安全,直接使用即可。

http://www.whsansanxincailiao.cn/news/32052378.html

相关文章:

  • 长沙专业网站建设服务/郴州网站建设网络推广平台
  • 公司网站英文/数据推广公司
  • php网站开发概念和简介/江苏网络推广公司
  • 网站建设维护 知乎/商务网站建设
  • 做网站必须花钱吗/手机百度最新正版下载
  • 购物网站多少钱/查排名网站
  • 购买已备案网站做非法/网站top排行榜
  • 托管型网站/单页网站seo如何优化
  • b2b的网站代表/近三年成功的营销案例
  • 如何建设网站简介/百度竞价排名多少钱
  • 淘宝做网站的多少钱/站长seo软件
  • 做城通网盘资源网站的源码/百度词条官网入口
  • 餐饮酒店网站怎么做/搜索引擎优化百度百科
  • 横栏网站建设公司/网店推广常用的方法
  • 不备案的网站可以做竞价吗/友情链接是啥意思
  • 杭州的设计网站大全/抖音搜索关键词排名
  • 电子商务网站建设与实例心得/成都百度推广电话
  • 微博如何做外链到时自己网站/网站建设方案设计书
  • 怎么跟网站建设公司谈/软文推广代表平台
  • 上海平台网站建设报/网站排名查询软件
  • 有限公司英文缩写/安卓手机游戏优化器
  • 网站收录量低怎么做/推广接单平台哪个好
  • 网站建设-信科网络/企业营销策划实训报告
  • 网站开发要注意哪些细节/免费收录网站
  • 有什么网站做厂家批发鞋子的/淘宝关键词搜索
  • 影音先锋资源网站建设/桂林网站设计制作
  • wordpress首页显示最新文章/网站整体优化
  • 做网站的软件dw/如何推销网站
  • 上海做网站备案要多久/百度下载官方下载安装
  • 动态网站用什么语言做的/短视频如何引流与推广