自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 还不懂单例模式?一文带你深入掌握单例

首先来思考一个问题,就是为什么需要单例模式呢?单例就是单例模式的核心目的是。一般会有个静态方法用于获取对象。

2025-03-18 19:06:04 360

原创 还分不清代理之间区别?一文带你掌握代理

JDK原生动态代理是Java原生支持的,不需要任何外部依赖,但是它只能基于接口进行代理(需要代理的对象必须实现于某个接口)CGLIB通过继承的方式进行代理(让需要代理的类成为Enhancer的父类),无论目标对象有没有实现接口都可以代理,但是无法处理final的情况。

2025-03-08 04:00:00 1631

原创 【面经分享】微派网络一面

HashMap 是拉链法解决。发生哈希冲突时,同一个槽位上,会形成一个链表。一个槽位上的节点达到树化的阈值后,会树化为红黑树。

2025-05-22 00:00:00 709

原创 亿级流量系统架构设计与实战(九)

Leaf 根据不同业务的需求分别实现了和两种方案。Leaf 和前面的方案几乎相同,只是多了一些思考和优化。

2025-05-20 00:00:00 570

原创 亿级流量系统架构设计与实战(八)

目的:设计一个可以生成的类型唯一 ID 的生成器。

2025-05-17 00:00:00 793

原创 亿级流量系统架构设计与实战(七)

假设某直播间有 100 万个在线用户 , 每秒有 100 个用户发送弹幕 , 为了让 100 万个用户都能看到这 100 条弹幕消息 , 弹幕服务每秒需要下发 1 亿条消息 , 服务器网络带宽被占满。, 一个用户发送的弹幕本来就会被淹没在不断刷屏的新弹幕中 , 用户也并没有执念一定要让直播间的其他用户看到自己发送的弹幕,所以这个场景的写请求很适合做。如图,水流被视为进入服务器的请求,出水口匀速出水可被视为服务器处理请求的固定速率,当请求过多导致漏桶满了时,将开始拒绝新来的请求。否则,请求被限流器丢弃。

2025-05-12 00:00:00 826

原创 亿级流量系统架构设计与实战(六)

当某个业务从单体服务架构转变为微服务架构后,多个服务之间会通过网络调用形式形成错综复杂的依赖关系。在微服务架构中 , 一个微服务正常工作依赖它与其他微服务之间的多级网络调用。网络是脆弱的 , RPC 请求有较大的概率会遇到超时 、 抖动 、 断开连接等各种异常情况 , 这些都会直接影响微服务的可用性。当微服务 A 是微服务 B 的调用方时 , 我们称 B 是 A 的下游服务 , 而 A 是 B 的上游服务。是容错性设计的具体表现形式。则是流量控制的常见实现方式。

2025-05-11 00:00:00 1206

原创 亿级流量系统架构设计与实战(五)

ConcurrentHashMap 是 JDK 内置的线程安全的 HashMap,它并不会对整个 HashMap 加锁以保证线程安全,而是将其内部数据拆分到多个槽,为每个槽独立加锁,于是对这些槽可以并发读 / 写。例如,按照数据创建时间将每半年作为一个区间进行数据分区一一将 2020 年 7 月至 12 月的数据存储到数据库 DB1 中,将 2021 年 1 月至 6 月的数据存储到数据库 DB2 中,将 2021 年 7 月至 12 月的数据存储到数据库 DB3 中。接下来介绍几种常见的数据路由算法。

2025-05-08 00:00:00 1879

原创 亿级流量系统架构设计与实战(四)

命令查询职责分离) :一种将数据的读取操作与更新操作分离的模式。读/写分离query 指的是读取操作 , 而 command 是对会引起数据变化的操作的总称 , 新增 、 删除 、 修改这些操作都是命令。

2025-05-07 00:00:00 129

原创 亿级流量系统架构设计与实战(三)

MySQL DRC 工具的技术核心要点包括实现伪从断点续传数据防重, 以及防止数据回环和数据冲突。

2025-05-05 00:00:00 816

原创 亿级流量系统架构设计与实战(二)

MHA 会实时监测每个 MySQL 主从集群的 Master 状态 , 如果某个 Master 宕机 , MHA则会自动选择数据最接近 Master 数据的 Slave 作为新的 Master, 然后将其他 Slave 重新指向新的 Master,整个故障转移过程自动化 ,且对业务方完全透明。: 一个业务场景的核心逻辑都是在 RPC 服务中实现的 , 强调的是**服务于后台系统内部 **, 所谓的 “ 微服务 ” 主要指的就是 RPC 服务;RPC 服务对后台内部暴露 **RPC 协议 **

2025-05-02 00:00:00 978

原创 亿级流量系统架构设计与实战(一)

DS 通过 IP 隧道加密技术将请求报文封装到一个新的数据包中 , 并选择一个 RS 的 IP 地址作为新数据包的目的 IP 地址 , 然后将它发送到对应的 RS;, 例如在主节点 A 和从节点 B 均安装了 Keepalived 并启动后,主节点 A 就会通过 ARP 响应包告知局域网 VIP 对应的 MAC 地址为 MAC-A ( 主节点 MAC 地址 ),之后所有收到这个 ARP 响应包的网络设备在访问 VIP 时 , 就会根据 MAC-A 访问到主节点 A。

2025-04-29 00:00:00 1571

原创 415.字符串相加

给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和并同样以字符串形式返回。你不能使用任何內建的用于处理大整数的库(比如 BigInteger), 也不能直接将输入的字符串转换为整数形式。

2025-03-18 16:26:27 312

原创 【JVM】GC 常见问题

CMS收集器在工作时,因为用于线程和垃圾回收在并发标记和并发清除阶段是并行的,此时老年代空间不足(例如浮动垃圾过多,用户创建对象频繁,新生代晋升老年代),就会出现Concurrent Mode Failure出现Concurrent Mode Failure会怎样?触发Full GC。

2025-03-15 17:00:00 367

原创 synchronized的实现原理?

Synchronized【对象锁】采用互斥的方式让同一时刻至多只有一个线程能持有【对象锁】它的底层由monitor实现的,monitor是jvm级别的对象( C++实现),线程获 得锁需要使用对象(锁)关联monitor在monitor内部有三个属性,分别是 owner、entrylist、waitset其中 owner 是关联的获得锁的线程,并且只能关联一个线程;entrylist关联的 是处于阻塞状态的线程;waitset关联的是处于Waiting状态的线程。

2025-03-15 16:11:45 962

原创 懂车帝 2025.3.13 一面 经凉

(答得做Redis集群)n = 23121,数组{2,4,9},问利用数组中的数字组成的最大的 小于n的数。Redis 集群除了哨兵模式,还有哪些方式 (主从集群,分片集群(Hash插槽))MySQL 事务的隔离级别以及之间的区别 (RU,RR,RP,SE)短链的容量 (不知道要问啥,说的5位短链9亿,6位短链大约500亿)(主从复制,哨兵,Hash插槽集群),还有就是不要急、紧张,慢一点完整的表达出来(听录音时太急了);【其实是想问,Redis内部怎么做,反问阶段给的一种方案是 我。

2025-03-14 04:00:00 183

原创 1367. 二叉树中的链表

输入:head = [4,2,8], root = [1,4,4,null,2,2,null,1,null,6,8,null,null,null,null,1,3]如果在二叉树中,存在一条一直向下的路径,且每个点的数值恰好一一对应以 head 为首的链表中每个节点的值,那么请你返回 True ,否则返回 False。二叉树和链表中的每个节点的值都满足 1 <= node.val <= 100。一直向下的路径的意思是:从树中某个节点开始,一直连续向下的路径。解释:树中蓝色的节点构成了与链表对应的子路径。

2025-03-05 19:56:06 116

原创 还不懂HashMap死链问题?一文带你解决

Java HashMap死链问题

2025-02-28 21:06:02 320

原创 穿什么有那么重要?——装饰模式

装饰模式可以为已有的功能添加更多功能。程序需要新功能时,是向旧的类中添加新的代码。这些代码装饰了原有类的功能。把类中的装饰功能从类中移除出去,简化了原有的类。将类的职责和装饰功能分离开。而且去除了相关类中重复的修饰逻辑。

2025-02-24 22:10:21 622

原创 简历复印——原型模式

小菜的简历,大鸟给小菜提出了一个要求:有一个简历类,必须有姓名,可以设置性别,年龄和工作经历,最终大鸟要三份简历。

2025-02-23 08:40:43 367

原创 考题抄错会做也白搭——模板方法模式

大鸟说道:让小菜写一个抄题目的程序。

2024-09-23 00:00:00 298

原创 雷锋依然在人间——工厂方法模式

薛磊风常年照顾军队退役的孤寡老人,但他现在住医院了,没有办法照顾老人了。所以他委托我们去照顾老人,但不会留自己的姓名,像雷锋一样做好事。

2024-09-20 08:00:00 330

原创 为别人做嫁衣——代理模式

小菜讲了一个经历:高二时,卓贾易通过戴利来给隔壁班娇娇送礼物,来表示他的爱意。时间一长,娇娇对戴利产生了爱意,反而对卓贾易没有任何的感觉。

2024-09-18 08:00:00 896

原创 穿什么有那么重要?——装饰模式

装饰模式可以为已有的功能添加更多功能。程序需要新功能时,是向旧的类中添加新的代码。这些代码装饰了原有类的功能。把类中的装饰功能从类中移除出去,简化了原有的类。将类的职责和装饰功能分离开。而且去除了相关类中重复的修饰逻辑。

2024-09-16 00:27:02 690

原创 单一职责原则_开放-封闭原则_依赖倒转原则

单一职责原则(SRP):就一个类而言,应该仅有一个引起它变化的原因。

2024-09-15 20:00:00 826

原创 商场促销-策略模式

大鸟给小菜出了一个作业,让小菜做一个商场收银软件,营业员根据客户端所购买商品的单价和数量,向用户收费。

2024-09-06 08:00:00 1851

原创 代码无错就是优?简单工厂设计模式

这样运算类就与运算方法解耦合了,添加其他的运算,只需继承运算类实现对应方法即可。以上代码实现计算器是没有问题的,但是否就真的好呢?,其他的运算却也要参加编译,这是我们不希望的。加减乘除类(Operator运算类的子类)虽然已经满足我们的需求了,但如果要加。使程序更加灵活,容易修改,易于复用。命名不规范:使用A,B来命名。这样在别的地方也可以复用。没有处理除数为0的情况。Operator运算类。Operator运算类。if做了好几次无用功。,这会使得我想要添加。

2024-09-04 20:00:00 498 1

原创 接口(Java基础)

微观概念:接口代表了某种能力宏观概念:接口是一种标准简单的说,接口就是一种被规范的标准,只要符合这个标准都可以通用,接口的表现在于对行为的抽象。就好比USB,每个厂商生产的USB我们都可以用,这是因为他们有同一个标准,这里USB就是接口。

2024-03-15 11:13:14 363 1

原创 static abstract final

1.static修饰的成员为静态成员,无需创建对象,可直接通过类名访问2.静态方法不能直接访问非静态成员3.静态方法中不能使用this或super4.静态方法可以继承,不能重写,没有多态5.静态代码块在类加载时被执行,且只执行一次被abstract修饰的类,成为抽象类。抽象类 ==> 不够完整的类,不够具体的类抽象(abstract)例如:对于“动物”,是抽象的概念,不是具体的事物假设有“动物类”从语法的角度是可以创建的。

2024-03-13 20:21:49 1729

原创 多态(Java基础)

下面的例子:调用Pet里的eat,在Dog里重写,执行Dog里的eat。主人可以执行“喂食”这个行为,但这个行为实际上是宠物执行的。父类类型作为形参,实际上是指向的子类对象。调用父类的方法,执行的是子类的方法。例:在一个宠物店,有主人这个父类。多态:父类类型指向子类对象。

2024-03-11 22:44:49 376

原创 方法的重写,继承下构造方法的执行

1.方法名与父类完全相同2.参数列表完全相同 (否则就不是重写而是重载了)3.返回值类型可以跟父类一致,也可以是父类的其他子类4.访问权限要相同或者放大​。

2024-03-11 15:56:14 598 1

转载 Java基础之Scanner类,Random类,ArrayList类

一个可以解析基本类型和字符串的简单文本扫描器。例如,以下代码使用户能够从System.in//属于引用类的方法//整数引用此类的实例用于生成伪随机数。是大小可变的数组的实现,存储在内的数据称为元素。此类提供一些方法来操作内部存储的元素.ArrayList中可不断添加元素,其大小也自动增长。

2024-03-10 20:10:02 123 3

原创 Java基础(仅供记录)

面向对象:方法 <==> 函数现实世界的组成:世界是由对象组成的对象:(Object Oriented Programming) 属性 + 方法类:类似图纸,按照类可以创建出对象抽取出共性的行为和特征,保留所关注的部分【业务使用的】由类创建出的对象类:定义了对象应具有的特征和行为,类是对象的模板对象:拥有多个特征个行为的实体,对象是类的实例。

2024-03-10 14:32:37 383 4

原创 Java基础(仅供记录)

仅供记录我的学习状况

2024-03-10 14:25:54 745 2

空空如也

空空如也

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

TA关注的人

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