自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 设计模式系列/ 职责链模式

设计模式系列之 职责链模式, 以及我们使用的职责链模式有哪些角色,以及如何使用。

2023-05-21 23:26:40 436

原创 分区的目的:

一致性Hash我们先来看下,一致性Hash的官方定义分布式缓存的问题。如果没有一致性Hash应该怎么做呢???我们分布式缓存的目的之一:就是为了解决服务器中缓存不足的问题,我们需要将不同的数据分散到不同的服务器上。那我们怎么能平均的分散的不同的服务器上呢???取模运算必不可少。一旦牵扯到固定值模数。弊端就暴露出来了。因为每次读取缓存/ 更新缓存,都需要通过hash + 取模来确定哪台服务器。但是如果服务器的个数发生变化,那么通过计算的结果都不正确了,可以理解为间接导致缓存失效。我们。

2023-04-20 21:17:41 504 1

原创 【Java 中间件】1.Zookeeper 集群 以及选举策略

什么是zookeeper呢, 使用官方的话是分布式远程协调服务那为什么要有zookeeper呢?到底是解决了什么问题呢???上述是我们分布式部署架构. 我们会把会员系统等服务独立部署. 但是很少能有服务独立完成工作的, 所以肯定会牵扯服务之间的相互调用.但是依据上述服务架构而言的话, 肯定会在服务内部写死IP/ 域名. 服务之间都是正常运行还好,一旦牵扯服务宕机的话, 一是: 必须手动做出反应 二是: 启动一个新的服务,牵扯到的其余服务都必须手动修改IP/ 域名等。

2023-04-07 23:33:10 556

原创 【Redis 进阶之路】4. Redis 预分区 以及集群

一致性Hash我们先来看下,一致性Hash的官方定义分布式缓存的问题。如果没有一致性Hash应该怎么做呢???我们分布式缓存的目的之一:就是为了解决服务器中缓存不足的问题,我们需要将不同的数据分散到不同的服务器上。那我们怎么能平均的分散的不同的服务器上呢???取模运算必不可少。一旦牵扯到固定值模数。弊端就暴露出来了。因为每次读取缓存/ 更新缓存,都需要通过hash + 取模来确定哪台服务器。但是如果服务器的个数发生变化,那么通过计算的结果都不正确了,可以理解为间接导致缓存失效。我们。

2023-04-06 09:26:06 433

原创 【Redis 进阶之路】3. Redis 主从 以及哨兵

如果看到这里,以为主从配置就结束了吗?不不不,如果以为就这样结束了, 那就大错特错了。上述步骤虽然进行了主从部署,但是master节点负责写数据,slave 节点负责读数据。如果master节点宕机了,也就是意味着Redis就不具备写的功能,基本算是废了。如果是人工发现master节点宕机了,会将slave节点升级为master节点,其他的slave节点跟随新的master节点。那么我们接下来分析的哨兵,就实现了该功能。应该由人做的事情,将其交给第三方插件做。

2023-04-01 15:34:49 1220

原创 【保姆级&安装大全之】Redis集群

上一篇我们学习了【【保姆级&安装大全之】Redis主从配置 以及哨兵】,接下来我们看配置下集群的搭建。一般在生产环境中,如果服务器不够用,但是又想要稳定性,可以试试主从配置,但是如果服务器足够多,直接上集群。

2023-03-19 20:27:54 60

原创 【保姆级&安装大全之】Redis主从配置 以及哨兵

今天我们要分享下关于主从Redis配置 以及哨兵,但是学习此文章之前,可以先看下上一篇文章【【保姆级&安装大全之】单机版Redis我们在生产环境使用Redis部署高可用的时候,无非有几种情况。第一种是:主从配置第二种是:集群第三种是:主从 + 集群那么接下来让我们从主从配置开始一步一步进行学习。在redis主从默认是只有主具备写的能力,而从只能读。如果主宕机,整个节点不具备写能力。但是如果这是让一个从变成主,整个节点就可以继续工作。即使之前的主恢复过来也当做这个节点的从即可。

2023-03-19 18:19:29 330

原创 【MyBatis 深入学习】MyBatis缓存级别

缓存,顾名思义其实就是就是为了提高查询效率。MyBatis的缓存同样是如此。那么接下来让我们看下MyBatis缓存到底是怎么回事。点击此连接查看Demo 源码以上就是对MyBatis中 一级二级缓存的认识,尤其是一级缓存,有效的利用缓存可以减少跟数据库IO 的操作,提高效率。

2023-03-18 15:09:51 484

原创 【保姆级&安装大全之】单机版Redis

记录下以单机版Redis 为例的安装过程。

2023-03-17 22:10:55 141

原创 【JavaScript 刨根问底之】requestAnimationFrame以及延时器

动画是一个持续的过程。早期的时候动画都是通过定时器来实现的。的由来,以及为什么会出现它。同时也会横向对比下定时器以及延时器。. 可以通过函数进行取消。大致的原理跟延时器/ 定时器保持一致。

2023-03-15 22:23:08 745

原创 【MyBatis 深入学习】MyBatis中${} 以及#{} 不同

从今天开始 让我们了解下关于MyBatis的使用细节,以及底层原理。同时 我们也会从JDBC的发展史来说。JDBC(Java DataBase Connectivity, Java数据库连接) ,是一种用于执行SQL语句的Java API,为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成简单来说就是Java 实现了一套关于JDBC相关接口,可以理解为是JDBC规范。数据库厂商为了能在Java中使用其语言,必须实现这套规范。大致过程如下图:其实我们平常使用的jar包。

2023-03-14 14:42:04 258

原创 【Spring 深入学习】过滤器详解

Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊的功能。例如实现URL级别的权限访问控制、过滤敏感词汇、压缩响应信息等一些高级功能 处理编码。

2023-03-13 16:07:58 1072

原创 【Spring 深入学习】SpringBoot配置方式 以及启动原理

在Spring中是组件轻量化,配置重量化。其实我们通过配置springmvc项目就可以看出来。不管是还是web.xml都特别多的配置。但是每个项目的配置都是大同小异。所以从另一个层面来说SpringBoot无xml配置的spring-mvc启动器基于依赖传递的特性,将很多共同的包都打包到一起了。然后我们只要引入一个启动器包,就可以将需要的所有的包都引入启动器文件特征Spring Boot的启动器实际上就是一个依赖。

2023-03-11 22:18:16 301

原创 【Spring 深入学习】AOP的前世今生之后续

上篇文章【Spring 深入学习】AOP的前世今生之代理模式我们讲述了代理模式。而我们今天的主人公AOP就是基于代理模式实现的,所以我们今天会简单学习下AOP是面向切面编程,一般可以帮助我们在不修改现有代码的情况下,对程序的功能进行拓展,往往用于实现 日志处理,权限控制,性能检测,事务控制等。

2023-03-11 15:07:19 307

原创 【Spring 深入学习】AOP的前世今生之代理模式

什么是代理模式呢???在不修改原有代码 或是 无法修改原有代码的情况下,增强对象功能,替代原来的对象去完成功能,从而打开了拓展的目的。先给大家看下 JavaScript中实现方式直接代理函数,在调用之前之后做一些事情接下来我们看下Java中是如何实现的???JDK 动态代理JDK Proxy 动态代理面向接口的动态代理 一定要有接口和实现类的存在 代理对象增强的是实现类 在实现接口的方法重写的方法生成的代理对象只能转换成 接口的不能转换成 被代理类gclib 动态代理面向父类进行动态代理。

2023-03-10 14:04:16 433

原创 【Spring 深入学习】配置DI 以及IOC的多种方式

如果通过xml 以及注解的方式将Spring 自动装配

2023-03-08 21:10:35 361

原创 【Spring 深入学习】事务的理解以及配置

事务(Transaction)指的是一个操作序列,该操作序列中的多个操作要么都做,要么都不做,是一个不可分割的工作单位,是数据库环境中的逻辑工作单位,由DBMS中的事务管理子系统负责事务的处理。

2023-03-06 16:40:25 332

原创 【JVM 由浅入深】JVM入门

今天我们对JVM 进行入门讲解,让我们了解下什么是JVM,是专门为Java服务的一款产品吗???好了废话不多说了,让我们开始吧。

2023-03-06 11:23:11 279

原创 【shell 编程大全】sed详解

今天单独拉出一章来讲述下sed命令。因为sed命令确实内容太多,不过也是比较灵活的,好了不废话了。我们开始吧。

2023-03-01 15:47:28 1937 1

原创 【shell 编程大全】awk详解

今天我们会将awk单独分为一个章节,因为其实awk本身是可以作为一个体系的,所以单独拿出来一章 ,不过分。

2023-03-01 09:16:22 1413

原创 【Java 面试合集】打印一个int整数的32位表示

嗨,大家好【Java 面试合集】又来了,今天给大家分享的主题是打印一个int整数的32位表示不知道看到这篇文章的各位是否都知道,一个int类型的表示方式就是32位呢???为什么呢其实很简单啊,因为一个int的占4个字节, 而每个字节占8个比特位,所以就是32位了。410等,那么我们如果知道用32位怎么表示呢i >= 0;} }

2023-02-27 11:33:41 553

原创 【Java 面试合集】Java类中定义一个无用空参构造方法的作用

嗨,大家好【Java 面试合集】又来了,今天我们分享的内容是基础中的基础,那就是Java类中定义一个无用空参构造方法的作用. 好了,废话不多说了,我们开始吧。

2023-02-24 22:14:23 733

原创 【Java 面试合集】String, StringBuffer和StringBuilder 之间的不同

嗨,大家好【Java 面试合集】又来了,今天我们分享的主题是String, StringBuffer和StringBuilder 之间的不同。大家别看这个知识点不难,但是里面的细知识很多哦,好了废话不多说了,我们开始吧。

2023-02-23 16:48:22 265

原创 【Java 面试合集】接口以及抽象类

嗨,【Java 面试合集】又来了,今天给大家分享的内容是接口以及抽象类。一看这个概念很多人都知道,但是方方面面的细节不一定知道哦,今天我们就从方方面面的细节来讲讲。

2023-02-22 14:27:02 854

原创 【shell 编程大全】数组,逻辑判断以及循环

大家好,我又来了。今天呢我们继续学习shell相关的知识。还是老样子我们先回顾下上一次【脚本交互 以及表达式】学习到的知识登录shell 关联配置文件什么是子shellumask 修改默认权限read 基础表达式简单计算表达式expr 计算bc 计算测试 表达式逻辑表达式字符串表达式文件表达式数字表达式测试进阶表达式逻辑组合表达式我们简单回顾了下上次学习的内容。废话不多说了,接下来让我们一起学习新的内容格式。

2023-02-21 17:14:19 589

原创 【Java 面试合集】final 以及finally 不同

嗨,大家好【Java 面试合集】又来了。今天给大家分享的主题是final 以及finally 不同很简单,但是确实很细节哦,好了废话不多说,让我们开始吧其实final以及finally除了书写相似外,毛关系没有。

2023-02-21 12:47:10 338

原创 【Java 面试合集】内存中为什么要区分栈和堆

嗨,大家好Java 面试合集又来了,今天我们分享的主题很大众化以及普通。无论是Java 语言本身还是别的语言都会有所涉及,但是今天我们从Java角度来讲下。

2023-02-19 20:44:20 506

转载 【Nginx 专栏】Nginx一网打尽:动静分离、压缩、缓存、黑白名单、跨域、高可用、性能优化...想要的这都有!

至此,Nginx的大部分内容都已阐述完毕,关于最后一小节的性能优化内容,其实在前面就谈到的动静分离、分配缓冲区、资源缓存、防盗链、资源压缩等内容,也都可归纳为性能优化的方案。^_^

2023-02-18 17:05:40 177

原创 【Java 面试合集】包装类的缓存问题

嗨,大家好,【Java 面试合集】每日一题又来了。包装类的缓存问题。我们下面的案例以Integer为例。

2023-02-17 22:04:00 716

原创 【Linux 系统运维基础】经典案例

列举以及归纳出Linux种常用的命令,为小白以及新手准备哦,废话不多说开始吧。查询端口使用情况

2023-02-16 12:22:24 1019

原创 【Java 面试合集】HashMap中为什么引入红黑树,而不是AVL树呢

开始学习这个知识点之前我们需要知道,在JDK1.8 以及之前,针对HashMap有什么不同。JDK 1.7的时候,HashMap的底层实现是数组 + 链表JDK1.8的时候,HashMap的底层实现是数组 + 链表 + 红黑树我们要思考一个问题,为什么要从链表转为红黑树呢。首先先让我们了解下链表有什么不好???

2023-02-15 22:25:28 1104

原创 【Java 面试合集】HashMap 在1.8做了哪些优化

嗨,大家好,我又来了。今天分享的面试合集是HashMap 在1.8做了哪些优化。HashMap是面试高频题,我也会从源码的角度逐一解析。有什么不对的,希望大家及时指正。

2023-02-14 22:19:27 449

原创 【shell 编程大全】脚本交互 以及表达式

嗨,我又来继续分享了。今天分享的内容是脚本交互,再开始接下来的分享开始之前,让我们来回顾下上一次(【shell 编程大全】内容格式化以及多样化输出内容格式化重定向管道符后台执行信息符号输入格式化eof原理cat 实践tee 实践输出格式化echo 解读颜色输出颜色分类printf 格式化对于一些临时性的场景,我们在临时性的环境中,做一些操作,但是不希望对外部的环境造成影响,这个时候我们就涉及到了一些临时shell环境的实践。

2023-02-14 15:32:18 1183

原创 【Java 面试合集】equals()和==区别,为什么重写equal要重写hashcode

今天我们来分析下到底equals 以及== 有什么区别。虽然这是一道基础题,但是越是基础的问题越能‘绊倒",好了废话不多话,我们开始了…

2023-02-13 23:31:04 775

原创 【Java 面试合集】怎么声明一个类不会被继承,以及应用场景

今天的Java 面试合集又来了。怎么声明一个类,不可以被继承。

2023-02-12 18:29:22 645 2

原创 【shell 编程大全】内容格式化以及多样化输出

tee命令读取标准输入,把这些内容同时输出到标准输出和(多个)文件中,tee命令可以重定向标准输出到多个文件。要注意的是:在使用管道线时,前一个命令的标准错误输出不会被tee读取。虽然我们能够通过 echo的方式实现信息某种程度的格式化输出,但是很多信息的输出偏重于手工的干预,效率太慢。什么叫输入的格式化呢,其实就是可以多行输入,输入啥就是就是啥。我们可以通过重定向的形式将命令中的内容输出到文件中,但是输出的格式大致分为2种。表示管道符,将左侧命令的结果,传递给右侧的命令来使用。相同的内容 多次输出。

2023-02-12 14:58:37 1834

原创 【大前端 合集】包管理工具差异性

在做分析以及学习之前,最好可以读下 pnpm 官网。可以理解下 pnpm 的核心宗旨当使用 npm 或 Yarn 时,如果你有 100 个项目,并且所有项目都有一个相同的依赖包,那么, 你在硬盘上就需要保存 100 份该相同依赖包的副本。然而,如果是使用 pnpm,依赖包将被 存放在一个统一的位置,因此:如果你对同一依赖包需要使用不同的版本,则仅有 版本之间不同的文件会被存储起来。

2023-02-12 11:52:50 366

原创 【Java 面试合集】简述下Java的三个特性 以及项目中的应用

上述截图中就是Java的三大特性,以及特性的实现方案。接下来就每个点展开来说说。

2023-02-11 17:22:17 616

原创 【Java 面试合集】Java中修饰符有哪些,有什么应用场景

封装继承多态。而我们今天要分析的修饰符就跟封装有着密切的联系。因为权限修饰符可以控制变量以及方法的作用范围。废话不多说,上图:上述截图就是修饰符的作用范围,接下来我们会详细的简述每一个修饰符。

2023-02-10 23:43:21 446

原创 【Java 面试合集】重写以及重载有什么区别能简单说说嘛

这是一道非常基础的面试题,我们在回答的过程中一定要逐一横向比较。等方面进行逐一分析来比较不同。话不多话,看下面的图文。

2023-02-10 19:32:01 666

空空如也

空空如也

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

TA关注的人

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