自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 Redis缓存设计及性能优化

1、什么是缓存穿透 缓存穿透是指查询一个根本不存在的数据, 缓存和DB都不会命中,通常出于容错的考虑, 如果从存储层查不到数据则不写入缓存层。 缓存穿透将导致不存在的数据每次请求都要到存储层去查询, 失去了缓存保护后端存储的意义。 造成缓存穿透的基本原因有两个: 自身业务代码或者数据出现问题。 一些恶意攻击、 爬虫等造成大量空命中。 解决办法:布隆过滤器(Bloom Filter) 对于恶意攻击,向服务器请求大量不存在的数据造成的缓存穿透,还可以用布隆过滤器先做一次过滤,对于不存在的数据布隆过滤器

2021-08-13 23:23:02 456

原创 Redis高可用集群特性

Redis集群:Redis 集群是一个提供在多个Redis间节点间共享数据的程序集。Redis集群并不支持处理多个keys的命令,因为这需要在不同的节点间移动数据,从而达不到像Redis那样的性能,在高负载的情况下可能会导致不可预料的错误。 redis单节点的主从模式,可以解决机器宕机的问题,因为redis可以在这种情况下进行主从切换,但是随着业务越来越大,对缓存的大小需求也越来越大,redis集群就是为了应对这种场景而诞生。 1、分布式系统中的CAP定理&&BASE理论 .

2021-08-13 23:10:59 266

原创 Redis高级特性&&持久化

1、Redis 发布订阅 序号 命令及描述 1 PSUBSCRIBE pattern [pattern ...] 订阅一个或多个符合给定模式的频道。 2 PUBSUB subcommand [argument [argument ...]] 查看订阅与发布系统状态。 3 PUBLISH channel message 将信息

2021-08-13 23:03:28 105

原创 Redis五种数据结构

1、String&&bitmap的api操作 1.1 String的常用api String是redis最常用的结构,进入redis客户端输入 help @string 可以查看api 序号 命令及描述 1 SET key value 设置指定 key 的值 2 GET key 获取指定 key 的值。 3 GETR

2021-08-13 22:53:32 98

原创 Redis是单线程的,为什么还这么快?

Redis6之前所说的单线程指的是:只有网络请求模块和数据操作模块是单线程的。而其他的如持久化存储模块、集群支撑模块等是多线程的。 1、redis的单线程指的是什么? Redis在处理客户端的请求时,包括获取 (socket 读)、解析、执行、内容返回 (socket 写) 等都由一个顺序串行的主线程处理,这就是所谓的“单线程”。但如果严格来讲从Redis4.0之后并不是单线程,除了主线程外,它也有后台线程在处理一些较为缓慢的操作,例如清理脏数据、无用连接的释放、大 key 的删除等等。 2、re.

2021-08-13 22:31:34 585

原创 并发三大特性可见性、有序性、原子性

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录一、从一个经典的程序理解可见性二、有序性2.读入数据总结 一、从一个经典的程序理解可见性 public class Visibility { public static boolean flag = true; public static void main(String[] args) throws InterruptedException { new Thr

2021-05-27 22:03:37 75

原创 关于位运算、位图的一些用法

1、打印一个整型的32位二进制 public static void print(int num){ for (int i = 31; i >= 0 ; i--) { System.out.print( ( num & (1<<i) ) == 0 ? 0 : 1 ); } } 2、num %2^$n$

2021-05-09 12:42:33 287

原创 安装tkinter出现错误

问题如下:Could not find a version that satisfies the requirement tkinter (from versions: ) No matching distribution found for tkinter 解决办法:sudo apt-get install python3-tk

2018-12-23 10:46:29 3476 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除