- 博客(156)
- 收藏
- 关注
原创 我的创作纪念日
1.将自己的知识梳理了一遍,加深了印象。1.每天刷两道题,写成文章记录下来;1.希望自己的技术水平能进一步提升吧。1.算法能力有了一定程度的提升。1.记录日常学习和练习的的思路。2.将学习的新知识进行记录。
2023-12-05 15:46:40
145
原创 23. 合并 K 个升序链表 --力扣 --JAVA
请你将所有链表合并到一个升序链表中,返回合并后的链表。给你一个链表数组,每个链表都已经按升序排列。
2023-12-05 15:41:08
312
原创 RocketMQ基本概念
Broker在实际部署过程中对应一台服务器,每个Broker可以存储多个Topic的消息,每个Topic的消息也可以分片存储于不同的Broker。消息系统所传输信息的物理载体,生产和消费数据的最小单位,每条消息必须属于一个主题。顺序消费模式下,消费者通过通过一个消息队列(Topic分区,称作Message Queue)收到的消息是有顺序的,不同消息队列收到的消息则可能是无顺序的。表示一类消息的集合,每个主题包含若干条消息,每条消息只能属于一个主题,是RocketMQ进行消息订阅的基本单位。
2023-12-04 13:23:03
374
原创 138. 随机链表的复制 --力扣 --JAVA
指针也都应指向复制链表中的新节点,并使原链表和复制链表中的这些指针能够表示相同的链表状态。节点组成,其中每个新节点的值都设为其对应的原节点的值。个节点组成的链表来表示输入/输出中的链表。的链表,每个节点包含一个额外增加的随机指针。,该指针可以指向链表中的任何节点或空节点。那么在复制链表中对应的两个节点。例如,如果原链表中有。返回复制链表的头节点。
2023-12-03 11:00:50
452
原创 1423. 可获得的最大点数 --力扣 --JAVA
每次行动,你可以从行的开头或者末尾拿一张卡牌,最终你必须正好拿。,每张卡牌都有一个对应的点数。你的点数就是你拿到手中的所有卡牌的点数之和。,请你返回可以获得的最大点数。
2023-12-03 10:09:13
454
原创 Kafka常见面试题
接收端:对接收到的数据进行备份,定期进行检查对执行失败的数据重新执行;选择手动提交offset,对执行失败的数据不提交offset。零拷贝技术:在cache中未查到数据,从磁盘获取加载到cache中后,不copy到Kafka进程中,而是由操作系统直接发送到网卡。每隔一段时间消费数据,将当前时间与数据产生时间进行对比,小于延迟时间的不提交,并重新进入等待。在消费者端对数据进行幂等校验,禁止一定时间内出现相同含义的数据;页面缓存技术:将数据缓存到系统的cache中,在刷新到磁盘当中。
2023-12-02 18:09:44
483
原创 Kafka常用术语
名词 解释 Broker 节点:一个Kafka节点就是一个Broker,一个和多个Broker可以组成一个Kafka集群 Topic 主题:Kafka根据Topic对消息进行归类,发布到Kafka集群的每套消息都需要指定一个topic,topic是一个逻辑概念,物理上不存在的 Producer 生产者:用于向Kafka发送消息 Consumer 消费者:从Kafka中获取消息 Consumer Group 消费组:每个Consumer都会归属于一个消费
2023-12-02 17:25:04
320
原创 消息对列MQ
一个分布式消息发布订阅系统,一个分布式的日志提交系统。性能高效、可扩张性良好和可以持久化。它的分区特性,可复制和可容错都是其不错的特性。Java语言实现,消息可靠性比Kafka更好,广泛应用在订单、交易、充值、流计算、消息推送、日志流式处理,binglog分发等场景。一个在AMQP(高级消息队列协议)基础上完成的,可复用的企业消息系统。
2023-12-02 16:20:17
492
原创 Redis Cluster
并且Redis Cluster也具备高可用性,因为每个主节点上都至少有一个从节点,当主节点挂掉时,Redis Cluster的故障转移机制会将某个从节点切换为主节点。Redis Cluster是一个去中心化的集群,每个节点都会与其他节点保持互连,使用gossip协议来交换彼此的信息,以及探测新加入的节点信息。对key计算它的哈希值,确定它在环上的位置,从该位置沿着环顺指针的走,找到第一个节点,便是这个key应该存放的服务器节点的位置。3.分配完集群后,可能会报错---16384个槽位没有分配完。
2023-12-02 12:53:10
508
原创 Redis缓存穿透、缓存击穿、缓存雪崩、布隆过滤器
3.数据预热分散过期时间:预先访问热点数据,或过期时间添加随机数,避免同一时间大批量数据过期。1.将返回的null值作为结果缓存起来,并设置过期时间从而更新数据。可以判断某一个数据一定不存在,但不能判断数据是否一定存在。redis和数据库存不存在该数据,无法通过查询获取返回值。高并发查询某数据,而缓存过期,大量数据查询打到数据库上。缓存大批量失效或Redis宕机,大批量查询落到数据库上。2.加缓存锁,同一时间只允许一个线程去查询热点数据。2.限流降级,同一时间只允许指定范围内的线程量。
2023-12-02 12:23:03
343
原创 Redis哨兵机制
哨兵本质就是一个Redis实例节点。哨兵模式是一种特殊的模式,它能够后台监控主机是否故障,如果故障了,则根据投票数自动将Slave节点转换为新的Master节点。首先Redis提供了哨兵的命令,哨兵是一个独立的进程,会独立的运行。它的原理是:哨兵通过发送命令,等待Redis服务器响应,从而监控运行的多个Redis实例。
2023-12-02 11:02:39
399
原创 25. K 个一组翻转链表 --力扣 --JAVA
是一个正整数,它的值小于或等于链表的长度。你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。的整数倍,那么请将最后剩余的节点保持原有顺序。个节点一组进行翻转,请你返回修改后的链表。
2023-12-02 10:02:11
548
原创 1094. 拼车 --力扣 --JAVA
当且仅当你可以在所有给定的行程中接送所有乘客时,返回。这些位置是从汽车的初始位置向东的公里数。乘客,接他们和放他们的位置分别是。向一个方向行驶(也就是说,
2023-12-02 09:23:41
555
原创 Redis主从复制
主从复制,是指将一台Redis服务器的数据复制到其他的Redis服务器。前者称为主节点(Master/Leader),后者称为从节点(Slave/Follower);数据是从主节点复制到从节点的。其中,主节点负责写数据(当然有读的权限),从节点负责读数据(它没有写数据的权限)。默认的配置下,每个Redis都是主节点。一个主节点可以有多个从节点,但一个从节点只能有一个主节点。即:主从节点是1对N的关系。
2023-12-01 19:18:22
393
原创 Redis订阅发布
发布者Publish一条消息,消息发送到Channel通道中,然后所有订阅了这个通道的订阅者Subscriber都会收到这条消息。
2023-12-01 18:19:37
335
原创 Redis持久化
RDB持久化支持手工执行和服务器定期执行,RDB持久化产生的文件是一个经过压缩的二进制文件,对应文件为dump.rdb,因为它保存在磁盘上,所以可以用它来还原数据库中的数据。手工执行RDB保存有两个命令:SAVE命令和BGSAVE命令。SAVE命令会阻塞Redis服务器进程,直到RDB文件生成完毕,都会一直处于阻塞状态,不能处理任何的Redis命令请求;BGSAVE命令会fork一个子进程来生成RDB文件,Redis服务器进程不受影响,可以继续处理命令请求。
2023-12-01 11:30:01
343
原创 24. 两两交换链表中的节点 -- 力扣 --JAVA
给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。
2023-12-01 09:48:10
401
原创 Redis常用指令
String类型SET key value 设置key、value EXPIRE key time 设置key的超时时间 TTL key 查看key的剩余时长 SETEX key time value 设置key、value和超时时长 GET key 获取value SETNX key value 当key不存在的情况下设置value STRLEN key 查看key的值的长度 INCR key 对key对应的值进行原子递增
2023-11-30 23:21:46
446
原创 Redis编码类型及对应含义
对象类型 编码类型(encoding) 取值范围 String int long长度范围内的数字 embstr 长度小于40的value值。数字和字符。 raw 长度大于40的value值 List ziplist 所有元素长度小于64字节,并且列表元素的个数小于512个 linkedlist 不满足ziplist的数据 Set intset 纯数字,列表中元素个数小于512个 hashtable 不满足in
2023-11-30 23:21:11
348
原创 1657. 确定两个字符串是否接近 --力扣 --JAVA
如果可以使用以下操作从一个字符串得到另一个字符串,则认为两个字符串。你可以根据需要对任意一个字符串多次使用这两种操作。
2023-11-30 11:44:44
814
原创 142. 环形链表 II --力扣 --JAVA
指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数。如果链表中有某个节点,可以通过连续跟踪。,返回链表开始入环的第一个节点。来表示链表尾连接到链表中的位置(,仅仅是为了标识链表的实际情况。给定一个链表的头节点。如果链表无环,则返回。,则在该链表中没有环。
2023-11-28 14:53:18
547
原创 48. 旋转图像 --力扣 --JAVA
旋转图像,这意味着你需要直接修改输入的二维矩阵。请你将图像顺时针旋转 90 度。使用另一个矩阵来旋转图像。
2023-11-26 20:12:10
581
原创 828. 统计子串中的唯一字符 --力扣 --JAVA
注意,某些子字符串可能是重复的,但你统计时也必须算上这些重复的子字符串(也就是说,你必须统计。输入用例保证返回值为 32 位整数。都是唯一字符,因为它们只出现一次,所以。中的唯一字符,并返回唯一字符的个数。的所有子字符串中的唯一字符)。本题将会给你一个字符串。
2023-11-26 18:58:15
656
原创 594. 最长和谐子序列 --力扣 --JAVA
数组的子序列是一个由数组派生出来的序列,它可以通过删除一些元素或不删除元素、且不改变其余元素的顺序而得到。,请你在所有可能的子序列中找到最长的和谐子序列的长度。和谐数组是指一个数组里元素的最大值和最小值之间的差别。现在,给你一个整数数组。
2023-11-25 08:19:40
406
原创 1457. 二叉树中的伪回文路径 --力扣 --JAVA
给你一棵二叉树,每个节点的值为 1 到 9。我们称二叉树中的一条路径是 「」的,当它满足:路径经过的所有节点值的排列中,存在一个回文序列。请你返回从根到叶子节点的所有路径中。
2023-11-25 00:57:27
560
原创 108. 将有序数组转换为二叉搜索树 --力扣 --JAVA
二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。排列,请你将其转换为一棵。
2023-11-24 18:49:02
624
原创 543. 二叉树的直径 --力扣 --JAVA
这条路径可能经过也可能不经过根节点。是指树中任意两个节点之间最长路径的。给你一棵二叉树的根节点,返回该树的。由它们之间边数表示。
2023-11-23 23:18:07
811
原创 1410. HTML 实体解析器 --力扣 --JAVA
HTML 实体解析器」 是一种特殊的解析器,它将 HTML 代码作为输入,并用字符本身替换掉所有这些特殊的字符实体。,请你实现一个 HTML 实体解析器,返回解析器解析后的结果。
2023-11-23 18:02:18
646
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人