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

网站和自媒体都可以做360收录查询

网站和自媒体都可以做,360收录查询,国外做汽配的网站,西部空间怎样上传网站在线工具站 推荐一个程序员在线工具站:程序员常用工具(http://cxytools.com),有时间戳、JSON格式化、文本对比、HASH生成、UUID生成等常用工具,效率加倍嘎嘎好用。 程序员资料站 推荐一个程序员编程资料站:…
在线工具站
  • 推荐一个程序员在线工具站:程序员常用工具(http://cxytools.com),有时间戳、JSON格式化、文本对比、HASH生成、UUID生成等常用工具,效率加倍嘎嘎好用。
程序员资料站
  • 推荐一个程序员编程资料站:程序员的成长之路(http://cxyroad.com),收录了一些列的技术教程、各大面试专题,还有常用开发工具的教程。
小报童专栏精选Top100
  • 推荐一个小报童专栏导航站:小报童精选Top100(http://xbt100.top),收录了生财有术项目精选、AI海外赚钱、纯银的产品分析等专栏,陆续会收录更多的专栏,欢迎体验~

在现代 Web 应用开发中,性能优化是一个永恒的话题。而缓存作为提升系统性能和减轻数据库压力的有效手段,得到了广泛应用。Spring Boot 作为一个流行的 Java 框架,提供了简便的缓存集成方式。

一、为什么使用缓存

在讨论技术实现之前,我们先来了解一下缓存的好处:

  1. 减少数据库访问:通过缓存,可以将频繁访问的数据保存在内存中,减少数据库查询次数,从而降低数据库负载。
  2. 提高响应速度:内存访问速度远快于数据库查询,使用缓存可以显著提升应用响应速度。
  3. 提升系统性能和扩展性:缓存可以分担部分数据访问压力,提高系统整体性能,并支持大规模用户访问。

二、Spring Boot 集成缓存的准备工作

在 Spring Boot 中,集成缓存非常方便,只需添加相关依赖和配置即可。

1. 添加依赖

首先,在你的 pom.xml 文件中添加缓存相关的依赖。Spring Boot 支持多种缓存实现,如 EhCache、Caffeine、Redis 等。以下是添加 Caffeine 缓存依赖的示例:

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-cache</artifactId>
</dependency>
<dependency><groupId>com.github.ben-manes.caffeine</groupId><artifactId>caffeine</artifactId>
</dependency>

如果你使用的是 Gradle,可以在 build.gradle 文件中添加以下依赖:

implementation 'org.springframework.boot:spring-boot-starter-cache'
implementation 'com.github.ben-manes.caffeine:caffeine'

2. 启用缓存

在 Spring Boot 应用的主类上添加 @EnableCaching 注解,以启用缓存功能:

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;@SpringBootApplication
@EnableCaching
public class CacheApplication {public static void main(String[] args) {SpringApplication.run(CacheApplication.class, args);}
}

三、缓存配置

application.propertiesapplication.yml 文件中进行缓存配置。以下是使用 Caffeine 缓存的配置示例:

application.properties

spring.cache.caffeine.spec=maximumSize=1000,expireAfterWrite=10m

application.yml

spring:cache:caffeine:spec: maximumSize=1000,expireAfterWrite=10m

这里配置了缓存的最大条目数为 1000,并且缓存条目在写入 10 分钟后过期。

四、使用缓存

Spring Boot 提供了一组注解来简化缓存操作:

  • @Cacheable:将方法的返回值缓存起来,以后调用时如果缓存中有值则直接返回缓存值。
  • @CachePut:将方法的返回值更新到缓存中。
  • @CacheEvict:从缓存中移除一个或多个条目。
  • @Caching:组合多个缓存操作。

1. 使用 @Cacheable

在需要缓存的方法上添加 @Cacheable 注解:

import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;@Service
public class UserService {@Cacheable("users")public User getUserById(Long id) {// 模拟数据库查询simulateSlowService();return new User(id, "John Doe");}private void simulateSlowService() {try {Thread.sleep(3000L); // 模拟延时} catch (InterruptedException e) {Thread.currentThread().interrupt();}}
}

在上面的示例中,第一次调用 getUserById 方法时会模拟数据库查询(延时 3 秒),结果会被缓存起来,后续相同参数的调用会直接返回缓存值。

2. 使用 @CachePut

当需要更新缓存时,可以使用 @CachePut 注解:

import org.springframework.cache.annotation.CachePut;
import org.springframework.stereotype.Service;@Service
public class UserService {@CachePut(value = "users", key = "#user.id")public User updateUser(User user) {// 更新数据库return user;}
}

3. 使用 @CacheEvict

当需要移除缓存中的条目时,可以使用 @CacheEvict 注解:

import org.springframework.cache.annotation.CacheEvict;
import org.springframework.stereotype.Service;@Service
public class UserService {@CacheEvict(value = "users", key = "#id")public void deleteUser(Long id) {// 从数据库删除用户}
}

4. 使用 @Caching

如果需要组合多个缓存操作,可以使用 @Caching 注解:

import org.springframework.cache.annotation.Caching;
import org.springframework.stereotype.Service;@Service
public class UserService {@Caching(put = { @CachePut(value = "users", key = "#user.id") },evict = { @CacheEvict(value = "users", key = "#user.id") })public User saveOrUpdate(User user) {// 保存或更新用户return user;}
}

五、缓存的监控和统计

对于生产环境中的缓存应用,监控和统计缓存的使用情况是至关重要的。Caffeine 提供了内置的统计功能,可以通过配置启用。

启用缓存统计

application.propertiesapplication.yml 文件中添加配置:

spring.cache.caffeine.spec=maximumSize=1000,expireAfterWrite=10m,recordStats
spring:cache:caffeine:spec: maximumSize=1000,expireAfterWrite=10m,recordStats

访问缓存统计

通过注入 CacheManager 获取缓存统计信息:

import com.github.benmanes.caffeine.cache.Cache;
import com.github.benmanes.caffeine.cache.Caffeine;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.caffeine.CaffeineCache;
import org.springframework.cache.caffeine.CaffeineCacheManager;
import org.springframework.stereotype.Service;@Service
public class CacheStatisticsService {@Autowiredprivate CaffeineCacheManager cacheManager;public void printCacheStats() {CaffeineCache caffeineCache = (CaffeineCache) cacheManager.getCache("users");Cache<Object, Object> nativeCache = caffeineCache.getNativeCache();System.out.println("Cache Stats: " + nativeCache.stats());}
}

六、总结

通过本文的介绍,我们学习了如何在 Spring Boot 项目中集成缓存功能。缓存作为提升系统性能的重要手段,在实际应用中有着广泛的应用场景。Spring Boot 提供了简洁的缓存集成方式,使得我们能够方便地使用缓存来优化系统性能。

http://www.hrbkazy.com/news/38389.html

相关文章:

  • 现在网站建设还用测浏览器吗产品推广计划书怎么写
  • 基层政府建设管理网站千万别手贱在百度上搜这些词
  • 网站上放百度地图网络推广的途径有哪些
  • 东营 微信网站建设自己建网站需要钱吗
  • 那些网站使用vue做的b站推广app大全
  • 北京营销型网站建设培训今日最火的新闻
  • 日本做暖暖的网站网店营销策略有哪些
  • 怎么用wordpress建立自己的网站seo搜索引擎优化视频
  • 网站平台建设流程厦门网络推广
  • 卖汽车配件怎么做网站淘宝店铺买卖交易平台
  • 做一个好的网站需要什么ios aso优化工具
  • 开发网站怎样注册公司秦洁婷seo博客
  • 深圳南山 网站建设百度搜索引擎介绍
  • 我是做网站的深圳全网营销推广平台
  • 重庆市做网站的公司网络公司排名
  • 响应式网站多少钱 开发排名优化方法
  • 沙井做网站优化设计答案六年级
  • 宁德网站建设爱站工具包官网
  • 做it公司网站百度竞价运营
  • 做网站的用多少钱网络宣传策划方案
  • 做电商网站需要多少钱免费b站软件推广网站2023
  • 网站框架怎么做的排名nba
  • 一流专业建设标准seo 重庆
  • 合作客户北京网站建设搜索引擎优化的概念
  • 卸载西部数码网站管理助手免费网络推广
  • 外贸英文网站制作重庆专业做网站公司
  • 设计合理的网站网页归档b站推广网站入口mmm
  • 自定义网站建设关键词优化排名用什么软件比较好
  • 营销网站建设定制现在搜索引擎哪个比百度好用
  • 专业模板网站设计公司友情链接交易