草庐IT

$FallbackHome机制

全部标签

day08-SpringMVC底层机制简单实现-04

SpringMVC底层机制简单实现-04https://github.com/liyuelian/springmvc-demo.git8.任务7-完成简单视图解析功能说明:通过目标方法返回的String,转发或重定向到指定页面8.1分析原生的SpringMVC使用视图解析器来对Handler方法返回的String(该String会转为视图类)进行解析,然后转发或重定向到指定页面。这里为了简化,直接在自定义的前端控制器编写方法完成视图解析器的功能。8.2代码实现(1)修改MyDispatcherServlet的executeDispatch方法部分代码://编写方法,完成分发请求privatev

TCP保活机制(KeepAlive)

TCP保活机制如果两端的TCP连接一直没有数据交互,达到了触发TCP保活机制的条件,那么内核里的TCP协议栈就会发送探测报文。如果对端程序是正常工作的。当TCP保活的探测报文发送给对端,对端会正常响应,这样TCP保活时间会被重置,等待下一个TCP保活时间的到来。如果对端主机崩溃,或对端由于其他原因导致报文不可达。当TCP保活的探测报文发送给对端后,石沉大海,没有响应,连续几次,达到保活探测次数后,TCP会报告该TCP连接已经死亡。所以,TCP保活机制可以在双方没有数据交互的情况,通过探测报文,来确定对方的TCP连接是否存活。TCP保活相关参数如下:SO_KEEPALIVE:是否开启保活TCP_

TCP保活机制(KeepAlive)

TCP保活机制如果两端的TCP连接一直没有数据交互,达到了触发TCP保活机制的条件,那么内核里的TCP协议栈就会发送探测报文。如果对端程序是正常工作的。当TCP保活的探测报文发送给对端,对端会正常响应,这样TCP保活时间会被重置,等待下一个TCP保活时间的到来。如果对端主机崩溃,或对端由于其他原因导致报文不可达。当TCP保活的探测报文发送给对端后,石沉大海,没有响应,连续几次,达到保活探测次数后,TCP会报告该TCP连接已经死亡。所以,TCP保活机制可以在双方没有数据交互的情况,通过探测报文,来确定对方的TCP连接是否存活。TCP保活相关参数如下:SO_KEEPALIVE:是否开启保活TCP_

HTTPS的加密原理(工作机制)

现在很多网站使用的都是HTTPS协议,比如CSDN他们为什么要使用HTTPS协议而不是继续使用HTTP协议呢?以及HTTPS都做了些什么?HTTP协议与HTTPS有哪些区别?下面我来讲解这些问题?(篇幅可能有些长,请求耐心观看,我以0基础的角度去讲解这些东西,如果你有一定的基础前面的跳过就好)一,HTTP协议和HTTPS协议的区别(如果这里的图文还是不能理解的话,就直接看简单理解)1.HTTP协议:HTTP协议,是一种使用明文数据传输的网络协议;一直以来HTTP协议都是最主流的网页协议;HTTP协议不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂

HTTPS的加密原理(工作机制)

现在很多网站使用的都是HTTPS协议,比如CSDN他们为什么要使用HTTPS协议而不是继续使用HTTP协议呢?以及HTTPS都做了些什么?HTTP协议与HTTPS有哪些区别?下面我来讲解这些问题?(篇幅可能有些长,请求耐心观看,我以0基础的角度去讲解这些东西,如果你有一定的基础前面的跳过就好)一,HTTP协议和HTTPS协议的区别(如果这里的图文还是不能理解的话,就直接看简单理解)1.HTTP协议:HTTP协议,是一种使用明文数据传输的网络协议;一直以来HTTP协议都是最主流的网页协议;HTTP协议不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂

Kafka架构篇 - 多副本机制

多副本机制副本是分布式系统中对数据和服务提供的一种冗余方式。为了对外提供可用的服务,往往会对数据和服务进行副本处理。数据副本:在不同的节点持久化同一份数据,当某个节点存储的数据丢失时,可以从副本中读取数据,这是分布式系统解决数据丢失问题的最有效的手段。服务副本:多个节点提供相同的服务,每个节点都有能力接收外部的请求并进行相应的处理。Kafka从0.8版本开始为分区引入了多副本机制,通过增加副本数量提升数据容灾能力。同时,Kafka通过多副本机制实现了故障自动转移,在Kafka集群中的某个节点失效的情况下仍然保证服务可用。从生产者发出的一条消息,首先会被写入分区的Leader副本,然后需要等待I

Kafka架构篇 - 多副本机制

多副本机制副本是分布式系统中对数据和服务提供的一种冗余方式。为了对外提供可用的服务,往往会对数据和服务进行副本处理。数据副本:在不同的节点持久化同一份数据,当某个节点存储的数据丢失时,可以从副本中读取数据,这是分布式系统解决数据丢失问题的最有效的手段。服务副本:多个节点提供相同的服务,每个节点都有能力接收外部的请求并进行相应的处理。Kafka从0.8版本开始为分区引入了多副本机制,通过增加副本数量提升数据容灾能力。同时,Kafka通过多副本机制实现了故障自动转移,在Kafka集群中的某个节点失效的情况下仍然保证服务可用。从生产者发出的一条消息,首先会被写入分区的Leader副本,然后需要等待I

Spring-Retry(重试机制)

Spring-Retry(重试机制)在实际工作中,重处理是一个非常常见的场景,比如:发送消息失败。调用远程服务失败。争抢锁失败。这些错误可能是因为网络波动造成的,等待过后重处理就能成功。通常来说,会用try/catch,while循环之类的语法来进行重处理,但是这样的做法缺乏统一性,并且不是很方便,要多写很多代码。然而spring-retry却可以通过注解,在不入侵原有业务逻辑代码的方式下,优雅的实现重处理功能。一、@Retryable是什么?spring系列的spring-retry是另一个实用程序模块,可以帮助我们以标准方式处理任何特定操作的重试。在spring-retry中,所有配置都是

Spring-Retry(重试机制)

Spring-Retry(重试机制)在实际工作中,重处理是一个非常常见的场景,比如:发送消息失败。调用远程服务失败。争抢锁失败。这些错误可能是因为网络波动造成的,等待过后重处理就能成功。通常来说,会用try/catch,while循环之类的语法来进行重处理,但是这样的做法缺乏统一性,并且不是很方便,要多写很多代码。然而spring-retry却可以通过注解,在不入侵原有业务逻辑代码的方式下,优雅的实现重处理功能。一、@Retryable是什么?spring系列的spring-retry是另一个实用程序模块,可以帮助我们以标准方式处理任何特定操作的重试。在spring-retry中,所有配置都是

类加载机制

类的生命周期首先我们先看类的生命周期类的加载过程包含了加载、验证、准备、解析、初始这五个阶段,其中除了解析阶段其他四个阶段的发生顺序都是确定的,因为解析阶段在某些情况下会在初始阶段之后开始,同时这些阶段都是按顺序开始的不是按顺序进行或结束,因为这些阶段通常都是互相交叉的混合进行。以下为类的生命周期加载->验证->准备->解析->初始化->使用->卸载(验证->准备->解析这三个可概括为连接阶段)在类的的加载阶段,虚拟机需要完成三件事:1、通过一个类的全限定名来获取其定义的二进制字节流。2、将这个字节流所代表的金泰存储结构转化为方法区的运行时数据结构。3、Java堆中生成一个代表这个类的Java