Redis之数据缓存

1.缓存架构简介

每次请求获取数据的时候,都需要查询数据库,这种时候,高并发、大数据环境中就会造成系统瓶颈,数据库不稳定甚至宕机。通过给系统中加入缓存功能,就可以提高数据的查询速度,降低数据服务器的io负载压力,当对mysql数据库进行dml操作时(CRUD),需要对缓存中的数据进行更新,实现缓存同步,否则会出现数据脏读(读取未提交数据)。
在这里插入图片描述

2.搭建项目

在这里插入图片描述

3.配置application.yml

#配置mysql数据库连接
spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/mybatis
    username: root
    password: root
  #配置redis数据库连接
  redis:
    host: 192.168.126.10
    port: 6379
mybatis:
  type-aliases-package: com.yd.app.pojo
  mapper-locations: classpath:/mapper/*.xml

2.创建实体类

	private Integer uid;
    private String uname;
    private String password;
    private String address;

3.创建UserMapper接口

@Mapper
public interface UsersMapper {
   
    /***
     *根据用户id查询用户信息
     */
    public Users loadUsersByIdMapper(Integer id);
    /***
     * 实现用户信息更新
     */
    public void updateUsersMapper(Users users);
    /***
     * 实现用户信息删除
     */
    public void deleteUsersMapper(Integer id);
}

4.UserMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.x
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于 Redis 热点数据缓存,可以使用 Redis缓存功能来提高系统性能和响应速度。热点数据指的是频繁被访问的数据,通过将这些数据缓存在内存中,可以避免频繁地从数据库中读取,从而减少数据库的压力。 在 Redis 中,可以使用以下两种常见的方式来实现热点数据缓存: 1. 缓存数据存储在 Redis 的字符串类型中:将需要缓存数据序列化为字符串,并使用一个唯一的键来存储在 Redis 中。当需要访问该数据时,先从 Redis 中尝试获取,如果获取不到,则从数据库中读取,并将读取到的数据存储到 Redis 中以供下次使用。这样就可以实现数据的快速读取和缓存更新。 2. 缓存数据存储在 Redis 的哈希类型中:将需要缓存数据组织为一个哈希表,其中每个字段对应一个属性或字段,并使用一个唯一的键来存储在 Redis 中。当需要访问该数据时,同样先从 Redis 中尝试获取,如果获取不到,则从数据库中读取,并将读取到的数据以哈希表的形式存储到 Redis 中。这种方式可以更灵活地处理复杂的数据结构。 需要注意的是,为了保证缓存的一致性和有效性,需要在适当的时机进行缓存的更新和失效操作。例如,在数据更新之后,需要及时更新 Redis 中的缓存数据,以保证缓存数据库的一致性。另外,还可以设置合适的缓存过期时间,避免缓存数据过期但仍然被使用的情况发生。 总的来说,通过 Redis 的热点数据缓存可以提高系统的性能和响应速度,减少数据库的压力,但需要注意缓存的一致性和有效性的处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值