MySQL与Redis实现二级缓存的方法介绍(代码示例)

2019年2月1日09:35:28 发表评论 17 浏览

本篇文章给大家带来的内容是关于MySQL与Redis实现二级缓存的方法介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

redis简介

  • Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库

  • Redis 与其他 key - value 缓存产品有以下三个特点:

    • Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用

    • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储

    • Redis支持数据的备份,即master-slave模式的数据备份

优势

  • 性能极高 - Redis能读的速度是110000次/s,写的速度是81000次/s

  • 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作

  • 原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来

下载与安装

  • 下载并解压缩

  • 将文件夹移动到/usr/local/中

  • 进入到文件夹中并编译测试

  • 编译安装

  • 启动redis

若出现以下画面则表示redis数据库已经启动了:
jpg

mysql与redis做二级缓存

  • 对于访问量比较大的数据我们为了能够更快的获取到数据需要对数据库中获取的数据进行数据缓存。

  • 在项目当中使用Redis缓存流程

    数据缓存应该考虑同步问题:如果对数据进行了缓存,当查询数据时,如果缓存中有数据则直接返回缓存数据不会查询数据库,当数据库数据改变的时候就有可能出现数据库不一致的问题。可以考虑在每次修改数据库的时候同时将对应的缓存数据删除,这样重新查询的时候就会查询数据库并缓存

    1. 查询时先从缓存当中查询

    2. 缓存当中如果没有数据再从数据库查询,并将数据保存进缓存当中

    3. 如果缓存中查询到了数据直接返回,不再需要查询数据库

步骤实现
  • 创建redisPool.go文件用于连接池的初始化

  • 创建main.go文件实现二级缓存

以上就是MySQL与Redis实现二级缓存的方法介绍(代码示例)的详细内容,更多请关注其它相关文章!

  • 微信
  • 分享
  • 相关标签:MySQL
  • 本文转载于:博客园,如有侵犯,请联系删除
    • 上一篇:JDBC和ODBC之间的区别
    • 下一篇:MySQL按时间统计数据的方法介绍(代码示例)

    发表评论

    :?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: