Redis缓存穿透 布隆过滤器

什么是布隆过滤器 布隆过滤器(Bloom Filter),是1970年,由一个叫布隆的小伙子提出的,距今已经五十年了。 它实际上是一个很长的二进制向量和一系列随机映射函数,二进制大家应该都清楚,存储的数据不是0就是1,默认是0。 主要用于判断一个元素是否在一个集合中,0代表不存在某个数据,1代表存在某个数据...

阅读更多

Redis缓存雪崩、穿透和击穿

缓存雪崩 概述 在高并发下,大量缓存key在同一时间失效,大量请求直接落在数据库上,导致数据库宕机。 如双十一期间,所有用户一打开淘宝就是进入首页,首页的压力非常大,为了提高并发,将网站首页数据都缓存到redis里,所有的redis key失效时间都是3小时。 双十一当天大量用户剁手狂欢,这时候3个小时过...

阅读更多

通用mapper

概述 通用mapper可以替我们生成常用增删改查操作的 SQL 语句。 代码官方发布地址: https://gitee.com/free https://gitee.com/free/Mapper/wikis/1.1-java?parent=1.integration 快速入门 创建测试数据...

阅读更多

RocketMQ 高级功能

高级功能 消息存储 分布式队列因为有高可靠性的要求,所以数据要进行持久化存储。 消息生成者发送消息 MQ收到消息,将消息进行持久化,在存储中新增一条记录 返回ACK给生产者 MQ push 消息给对应的消费者,然后等待消费者返回ACK 如果消息消费者在指定时间内成功返回ack,那么...

阅读更多

高并发下接口幂等性问题

幂等性概念 在编程中,一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数,或幂等方法,是指可以使用相同参数重复执行,并能获得相同结果的函数。这些函数不会影响系统状态,也不用担心重复执行会对系统造成改变。例如,“getUsername()和setTrue()”函数就是一个幂等函数. 更...

阅读更多

RocketMQ 核心功能

MQ介绍 核心功能demo repo springboot整合RocketMQ / 综合案例开发 repo 为什么要用MQ 消息队列是一种“先进先出”的数据结构 其应用场景主要包含以下3个方面: 应用解耦 系统的耦合性越高,容错性就越低。以电商应用为例,用户创建订单后,如果耦合调用库...

阅读更多

在浏览器中输入url地址期间发生了什么

接下来以下图较简单的网络拓扑模型作为例子,探究探究其间发生了什么? 01 HTTP 解析 URL,确定 Web 服务器和文件名 生产 HTTP 请求信息 浏览器做的第一步工作是解析 URL 首先浏览器做的第一步工作就是要对 URL 进行解析,从而生发送给 Web 服务器的请求信息。...

阅读更多

计算机网络常见面试题整理

OSI与TCP/IP各层的结构与功能,都有哪些协议? 1)应用层 **应用层(application-layer)的任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程(进程:主机中正在运行的程序)间的通信和交互的规则。**对于不同的网络应用需要不同的应用层协议。在互联网中应用层协议很多,...

阅读更多