自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 常见直播流协议,你学“废”了吗?

大家好,我是练习两年半的Java练习生,今天我们来讲讲关于直播协议的那些故事吧。这些年随着直播行业的兴起,特别是在疫情之后,什么直播带货、直播授课等等相继火爆,各个公司也都相继参与到直播这个业务中,那这背后的技术有哪些呢?今天就让我们通过学习直播相关的一些协议来感受这背后的技术吧~

2023-08-12 20:13:06 1177 1

原创 库存扣减设计和下单

大家好,我是练习两年半的Java练习生,前面我们已经介绍了领域驱动和缓存设计,这一章我们将介绍秒杀设计过程中比较重要的一个部分:关于库存扣减。我们将会从一些库存设计的一些原则和方案入手,介绍有哪些方案,进行对比,然后再分析秒杀系统中具体的下单代码,下单代码中就涉及到库存的扣减。让我们一起来看看吧~好啦,以上就是本篇文章要介绍的所有内容,主要是将库存扣减的两种方式和下单的整体流程,认识秒杀设计的具体实现是怎么样的。如果大家还有什么问题如果大家还有什么问题,欢迎私信或者在评论区提出来,让我们一起学习进步!

2023-07-12 22:51:58 1049

原创 缓存设计(本地缓存 + 分布式缓存)

大家好,我是练习两年半的Java练习生,本篇文章会分析秒杀系统里面关于缓存部分的内容,先介绍缓存的对象和涉及的服务类,再从缓存策略入手,分析本地缓存 + 分布式缓存在代码中的具体体现和应用,最后再整体分析一下缓存这部分的源码和分布式锁的应用。其中分布式缓存的实现和分布式锁是关键,面试也被问过,希望大家可以仔细看看,有什么问题欢迎在评论区提出。

2023-07-06 22:58:23 1195

原创 领域驱动设计(DDD,Domain-Driven Design)

大家好,我是练习两年半的Java练习生,今天我们来讲一讲关于架构设计中的一种模式,领域驱动设计,也称DDD,Domain-Driven Design。还有介绍一下秒杀项目中领域模型的一些设计。

2023-07-02 18:17:32 3182

原创 Git详细教程,彻底理解Git运作机制

大家好,我是练习两年半的Java练习生,今天我们来学习一下我们经常用的Git。相信大家对Git已经不陌生了,但你真的了解其中的运作机制吗?你知道rebase 和 merge 的区别吗?让我们一起来学习吧!!好啦,以上就是我们今天要介绍的全部内容,希望能帮助你更好的理解Git,并在日常开发中灵活使用这个工具~~同时,Git简单易懂的动画学习,也非常推荐大家去这个网站上学习一下,里面用生动的动画告诉你git 的各种操作,可能花几个小时就能把里面的案例做完了 ,一定会对你理解Git有一定帮助的!!

2023-04-16 19:59:02 792

原创 HTTPS相关知识点

大家好,我是练习两年半的Java练习生,今天我们来讲一讲计算机网络里面试常问的几个问题,也方便大家还有我自己可以复习. Let’s go ~~~好啦,以上就是我们今天要介绍的全部内容,希望对大家有所帮助。如果有什么问题,欢迎在评论区讨论,一起学习进步!

2023-04-08 11:24:54 231

原创 HTTP 1.0 / 1.1 / 2.0 / 3.0 区别

大家好,我是练习两年半的Java练习生,今天我们来讲一讲计算机网络中的HTTP协议,还有各版本之间的区别,让我们一起来看看吧!好啦,以上就是我们今天要介绍的全部内容,希望能帮助你更好的理解和记忆HTTP各版本之间的区别。如果有什么问题,欢迎在评论区讨论,一起学习进步!

2023-04-01 10:57:21 675

原创 IP协议以及相关技术

大家好,我是练习两年半的Java练习生,今天我们来讲一讲计算机网络中的IP协议,以及我们经常听到的一些名词,像NAT、DHCP等等

2023-04-01 10:49:44 1740

原创 Redis知识图谱,复习专用

大家好,我是练习两年半的Java练习生,最近整理了redis一些知识点的思维导图,和大家分享一下。以上就是我这一周整理的关于redis这部分知识的思维导图啦,如果大家想要原图可以私信我。

2023-03-25 10:59:54 218 1

原创 缓存击穿、缓存穿透、缓存雪崩搞清楚了吗?

大家好,我是练习两年半的Java练习生,今天我们来讲一讲redis中常见的缓存问题首先,我们先来缕一缕缓存穿透 、 缓存击穿、 缓存雪崩这三者到底有什么区别?有时候我们看时就觉得自己会了,但回过头就忘了。今天就带大家来缕一缕缓存雪崩缓存雪崩是比较好理解的,就是在同一时间有大量的key值失效,导致大量请求打到数据库层面上。这跟真正的雪崩差不多。大家可以想象真正的雪崩,必须是很多雪(key)同时脱落。缓存击穿缓存击穿 ,一个热点key失效,大量并发请求对其中进行访问,导致大量请求打到数据库上。

2023-03-25 10:35:30 149

原创 count(*)、count(1)、count(字段)有什么区别?

大家好,我是练习两年半的Java练习生,最近阅读了《mysql45实战讲》,复习了Mysql的各部分内容,所以想出一个专栏和大家分享一下!今天,我们学习了count(1)/count()/count(字段)/count(id)的效率问题,其中效率从高到低应该为count() = count(1) > count(id) > count(字段)。好了,这就是我们今天介绍的全部内容了。如果你有什么疑问或者问题,欢迎在评论区指出!

2023-03-18 08:48:11 695

原创 mysql之日志篇

大家好,我是练习两年半的Java练习生,最近阅读了《mysql45实战讲》,复习了Mysql的各部分内容,所以想出一个专栏和大家分享一下!

2023-03-18 08:29:47 112

原创 Mysql之锁篇

大家好,我是练习两年半的Java练习生,最近在准备面试,其中,Mysql是面试中常问的问题,所以我想整理一下一些面经出来,希望对大家有帮助!后续还会陆续更新!!

2023-03-10 21:09:31 94

原创 设计模式之建造者模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!将一个复杂对象的构建与其表示分离,使得同样的构建过程可以创建不同的表示以上就是今天要讲的内容,本文简单介绍了设计模式中建造者模式,在Java开发中可能大家都见过,但可能不知道怎么回事,通过学习该模式,可以更进一步了解开发中遇到的问题。

2023-03-04 00:53:57 87

原创 设计模式之原型模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!用原型实例指定创建对象种类,并通过拷贝原型创建新的对象原型模式是一种创建型设计模式,允许一个对象再创建另外一个可定制的对象,无需知道如何创建的细节工作原理是:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建,即对象.clone()

2023-03-04 00:48:25 73

原创 设计模式之享元模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!享元模式(Flyweight Pattern)是一种结构型设计模式,其主要目的是通过共享对象来减少系统中对象的数量,从而减少内存占用和提高系统性能。在享元模式中,对象分为两种类型:内部状态(Intrinsic State)和外部状态(Extrinsic State)。

2023-03-04 00:44:45 146

原创 设计模式之状态模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!状态模式允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。其中,对象看起来好像修改了它的类 是什么意思呢?从客户的视角来说,如果你使用的对象能够完全改变它的行为,那么你会觉得这个类变了,实际上,这个类只是使用组合通过简单引用不同对象来造成类改变的假象。

2023-03-04 00:42:35 119

原创 设计模式之组合模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!允许你将对象组成树形结构来表现“整体/部分”的层次结构。组合能让客户以一致的方式处理个别对象和对象组合。以上就是今天要讲的内容,本文介绍了设计模式中组合模式,该模式要注意叶子节点和子节点要继承于同一个类,并统一对待。

2023-03-04 00:39:58 98

原创 设计模式之迭代器模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示。以上就是今天要讲的内容,本文介绍了设计模式中迭代器模式,主要作用就是遍历不同的集合对象,方便用户使用。

2023-03-04 00:33:20 144

原创 设计模式之模板模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!在一个方法中定义一个算法的框架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。以上就是今天要讲的内容,本文介绍了设计模式中模板模式,我们创建一个步骤相似的东西的时候,我们就可以使用模板模式。模板模式和之前讲过的策略模式之间的区别,主要就是模板方式是对算法具体内容的替换,而策略模式是修改使用不同的算法。

2023-03-04 00:29:20 172

原创 设计模式之适配者模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!适配器模式将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。以上就是今天要讲的内容,本文介绍了设计模式中的适配者模式,其中要明白适配者类还有被适配者类之间的关系,明白两者的依赖关系如何。

2023-03-04 00:11:22 256

原创 设计模式之外观模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!外观模式提供了一个统一的接口,用来访向子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。以上就是今天要讲的内容,本文介绍了设计模式中的外观模式,该模式为系统内部提供统一的接口,方便外界调用。

2023-03-03 23:56:59 77

原创 设计模式之命令模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!命令模式将“请求”封装成对象,以便使用不同的请求队列或者日志来参数化其他对象。命令模式也支持可撒销的操作。以上就是今天要讲的内容,本文介绍了设计模式中的命令模式,其实这个模式在开发中是用得很多的一个模式,比如说线程池的实现,就是将一个个具体的命令对象封装成FutureTask对象,交给对应的线程池去调用。从而实现请求的发送者和接收者解耦。

2023-03-03 23:37:21 381

原创 设计模式之单例模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!确保一个类只有一个实例,并且提供一个全局访问点有什么用处呢?比如说:线程池、缓存、对话框、日志对象等这些只需要一个实例,如果出现多个实例的话,会导致许多问题的发生。用静态变量可以实现单例模式,但有什么缺点?如果是一个全局变量,那么程序必须一开始就创建好对象,这样的话非常消耗资源。我们应该在用到这个对象的时候才进行创建。

2023-03-03 23:29:22 80

原创 设计模式之抽象工厂模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!抽象工厂模式提供一个接口,用于创建相关或依赖对象的家族,而不需要明确制定具体类一个工厂可以生产一组相关的产品,而不需要知道实际产出的具体产品是什么。以上就是今天要讲的内容,本文介绍了设计模式中的一个非常重要的模式:抽象工厂模式。抽象工厂模式是处理一系列类组合成的产品创建,增加了灵活性、可维护性和扩展性。

2023-03-03 18:20:03 137

原创 设计模式之简单工厂模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!它使用一个工厂类来创建所有的产品对象,而客户端只需要提供一个参数来指定需要创建的产品类型。以上就是今天要讲的内容,本文简单介绍了设计模式中的简单工厂模式。

2023-03-03 18:09:31 272 1

原创 设计模式之工厂方法模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!工厂方法模式定义了一个创建对象的接口(广义),但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类,注意这里工厂方法模式有多个工厂类。以上就是今天要讲的内容,本文简单介绍了设计模式中很常见的工厂方法模式。工厂方法模式的作用是将对象的创建过程封装起来,从而隐藏对象创建的细节,让客户端通过调用工厂方法来获取所需的对象,而无需了解具体的创建过程。

2023-03-03 17:59:15 220

原创 设计模式之装饰者模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!装饰者模式动态的将类责任附加到对象上,若需要扩展功能,装饰着提供了比继承更有弹性的代替方案。以上就是今天要讲的内容,本文介绍了设计模式中装饰者模式。装饰者模式能够动态的添加责任到原有的类上面,使用的是组合,提供了比继承更有弹性的方案。这也印证了一个原则,多用组合,少用继承。

2023-03-03 17:49:32 224

原创 设计模式之观察者模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。以上就是今天要讲的内容,本文介绍了设计模式中的观察者模式,这个模式是实现对象之间的一对多依赖,订阅主题、主题推送是我们这节的核心内容。我们要记住一个原则,为了交互对象之间的松耦合设计而努力。

2023-03-03 17:37:22 71

原创 设计模式之策略模式

大家好,我是练习两年半的Java练习生,最近阅读了《深入浅出设计模式(中文版)》,学习了各种设计模式,所以想出一个专栏和大家分享一下!后续还会陆续更新!!策略模式(Strategy Pattern)是一种行为型设计模式,它允许在运行时动态地改变对象的行为。该模式定义了一系列算法,将每个算法都封装起来,使它们可以相互替换,并且让算法的变化不会影响到使用算法的客户端。

2023-03-03 17:19:56 84

原创 JVM之类加载机制

如果读者需要对应的图可以私信我或者在评论私信我,如果文章内容任何问题,欢迎在评论区指出。如果觉得该文章对你有帮助,欢迎关注我,一起学习进步!

2023-02-25 10:22:12 44

原创 JVM之垃圾回收

关于JVM垃圾回收这部分,我们首先得掌握垃圾回收的4种常见算法,然后认识几种常见的垃圾收集器,其中较为重要的是CMS垃圾收集器、G1垃圾收集器。因此,我们要在掌握几种常见的垃圾回收算法的前提下,研究常见垃圾收集器中如何使用各种垃圾回收算法以及对应的垃圾回收过程。这就是关于JVM垃圾回收这一章的全部内容了,如果你发现有什么不足或错误,欢迎在评论区指出或私信我。如果觉得该文章对你有帮助,可以关注我,一起学习进步!

2023-02-25 10:04:40 100

原创 JVM之内存管理

关于JVM内存管理这部分内容是日常开发中比较常见的,也需要每个人都必须掌握,后面还有包括JVM的垃圾回收、class文件结构、类加载、字节码执行引擎等章节的内容,如果觉得该文章对你有帮助,可以关注我,一起学习进步!

2023-02-24 17:15:36 607

原创 redis集群原理和部署

redis集群学习

2022-11-25 09:40:06 312

原创 redis缓存方案

redis缓存入门

2022-11-25 09:38:26 1066

原创 Mybatis复习总结

随心整理

2022-09-28 09:52:52 314

原创 Spring AOP 和 AspectJ AOP 区别

spring关于AOP

2022-09-28 09:42:28 396

原创 spring源码之IOC

容器是什么呢?

2022-09-28 09:40:24 361

原创 spring事务失效情况

为啥会失效呢

2022-09-28 09:36:23 194

原创 spring之事务传播机制

spring事务传播

2022-09-28 09:34:52 62

空空如也

空空如也

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

TA关注的人

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