数据库优化方案
数据库优化方案
user_san
这个作者很懒,什么都没留下…
展开
-
redis分布式——哨兵机制、redis集群
目录2、哨兵机制2.1 配置步骤2.2 python中使用哨兵3、redis集群4、集群redis在python中的使用1、根据redis.conf文件复制两个配置文件6381.conf(主库)6380.conf(从库)2、编辑6381.confbing 0.0.0.0port 6381# 把保护模式设置为no,才能让外网访问protected-mode no 编辑6380.confbing 0.0.0.0port 6380# 把保护模式设置为no,才能让外网访问protect原创 2020-11-14 22:06:05 · 232 阅读 · 0 评论 -
redis的缓存穿透、击穿、雪崩、预热和更新
1.缓存穿透特点: 当缓存和数据库中都没有数据的时候描述:当查询Redis没有数据的时候,会继续查询mysql,mysql也没有数据,当大量查询请求发生或遭到恶意攻击时,这些访问全部透过Redis,并且mysql也没有数据,这种现象称为“缓存穿透”。解决:1.对访问进行校验,如参数、登录状态、限流等2.设置值为null的key返回3.使用布隆过滤器(概率,一定不存在或可能存在)2.缓存击穿特点: 当Redis没有数据,但数据库有数据当Redis的热点数据key失效时,大量并发查询直接打到m原创 2020-11-11 19:54:24 · 119 阅读 · 0 评论 -
redis内存用完了怎么办?
本文转载自:https://www.cnblogs.com/johnnyblog/p/11479649.html,也可点我跳转问题引入:redis是一个内存型数据库,当缓存满了的时候,该如何解决呢?1、通过配置文件配置通过在Redis安装目录下面的redis.conf配置文件中添加以下配置设置内存大小//设置Redis最大占用内存大小为100Mmaxmemory 100mbredis的配置文件不一定使用的是安装目录下面的redis.conf文件,启动redis服务的时候是可以传一个参数指定r转载 2020-11-11 17:42:43 · 470 阅读 · 0 评论 -
Redis如何进行持久化存储
问题引入:我么知道,redis是内存存储,mysql是磁盘存储,如果电脑关机或断电,redis是如何保证数据不丢失的呢?Redis的持久化有如下两种机制RDB:将Reids在内存中的数据库定时dump到磁盘上(默认文件名dump.rdb)AOF:将Reids的操作日志以追加的方式写入文件(默认是appendonly.aof)一、RDB 快照持久化(默认开启)redis可以将内存中的数据定期写入磁盘进行持久化。在进行持久化时,redis会创建子进程来执行。持久化的三种触发机制:1、定期自动原创 2020-11-07 20:45:46 · 1526 阅读 · 0 评论 -
mysql数据库表设计——如何对图片进行存储
业务场景:当我们进行头条文章接口的设计时,需要存储封面图片的字段。文章和图片关系 ----> 一对多方案一:传统的表设计设计一张表,专门保存文章和封面图片之间的关系idarticle_id(文章id,FK外键)cover_url (封面url地址)12url122url234url345url4提出问题:文章的封面一般是不会去修改的,但是在文章首页都需要展示,此时又涉及到关联查询,所有速度是比较慢的。方案二: 使用mys原创 2020-11-05 18:38:57 · 6486 阅读 · 0 评论