<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Cavan_C的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Cavan_C</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Cavan_C]]></copyright><item><title><![CDATA[分布式锁-redis、zookeeper优缺点]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/122883826</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/122883826</guid><author>Cavan_C</author><pubDate>Fri, 11 Feb 2022 17:08:31 +0800</pubDate><description><![CDATA[redis分布式锁优缺点

缺点：

获取锁的方式简单粗暴，获取不到锁直接不断尝试获取锁，比较消耗性能；
	redis的设计定位决定了它的数据并不是强一致性的，在某些极端情况下，可能会出现问题。锁的模型不够健壮；
	使用redlock算法来实现，在某些复杂场景下，也无法保证其实现100%没有问题，关于redlock的讨论可以看 How to do distributed locking；
	redis分布式锁，其实需要自己不断去尝试获取锁，比较消耗性能。
zookeeper分布式锁优缺点

优点

zook]]></description><category></category></item><item><title><![CDATA[SpringBoot整合Seata]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/121989386</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/121989386</guid><author>Cavan_C</author><pubDate>Fri, 17 Dec 2021 09:41:58 +0800</pubDate><description><![CDATA[谢谢谢谢谢寻寻
]]></description><category></category></item><item><title><![CDATA[雪花算法的实现原理]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/121473197</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/121473197</guid><author>Cavan_C</author><pubDate>Mon, 22 Nov 2021 16:05:14 +0800</pubDate><description><![CDATA[第一部分1bit：0没有任何意义（因为二进制里第一个bit如果为1，那么都是负数，但是我们生成的ID都是正数，所以第一个bit统一都是0）；
	第二部分41bit：表示时间戳（毫秒）（41bit可以表示的数字多达2^41 - 1，也就是可以标识2^41 - 1个毫秒值，换算成年就是表示69年的时间）；
	第三部分5bit：表示机房ID（最多可以代表2^5=32个机房）；
	第四部分5bit：表示机器ID（最多可以代表2^5=32台机器）；
	第五部分12bit：表示序号，就是某个机房某台机器上这一毫...]]></description><category></category></item><item><title><![CDATA[【MySQL】常用网站]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/121381814</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/121381814</guid><author>Cavan_C</author><pubDate>Wed, 17 Nov 2021 16:36:02 +0800</pubDate><description><![CDATA[官方网站：MySQLhttps://www.mysql.com/
]]></description><category></category></item><item><title><![CDATA[Centos7安装Redis]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/121141879</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/121141879</guid><author>Cavan_C</author><pubDate>Thu, 04 Nov 2021 14:38:13 +0800</pubDate><description><![CDATA[安装GCC依赖


yum install -y gcc

下载redis安装包


wget http://download.redis.io/releases/redis-5.0.9.tar.gz

解压安装包


tar -xvf redis-5.0.9.tar.gz

编译并安装


cd /usr/local/redis-5.0.9
make &amp;&amp; make install

启动Redis服务

前台启动

cd /usr/local/redis-5.0.9/bin
./redi]]></description><category></category></item><item><title><![CDATA[java学习导航]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/120956915</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/120956915</guid><author>Cavan_C</author><pubDate>Mon, 25 Oct 2021 17:52:55 +0800</pubDate><description><![CDATA[目录

JAVA加密、解密

消息摘要算法

对称加密算法

非对称加密算法

数字签名算法

JAVA加密、解密


	消息摘要算法
	
	
	对称加密算法
	
	
	非对称加密算法
	
	
	数字签名算法
	
]]></description><category></category></item><item><title><![CDATA[分组密码五种工作模式]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/120742608</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/120742608</guid><author>Cavan_C</author><pubDate>Wed, 13 Oct 2021 14:08:22 +0800</pubDate><description><![CDATA[电子密码本模式（Electronic Code Book，缩写ECB）

   电子密码本模式是最基本、最易理解的工作模式。每次加密均产生独立的密文分组，每组的加密结果不会对其他分组产生影响
]]></description><category></category></item><item><title><![CDATA[【MySQL】锁介绍]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/120675571</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/120675571</guid><author>Cavan_C</author><pubDate>Sat, 09 Oct 2021 17:23:17 +0800</pubDate><description><![CDATA[一、锁粒度分类

1.1 行级锁

1.2 表级锁

1.3 页级锁
]]></description><category></category></item><item><title><![CDATA[SpringBoot2启动流程源码分析 - run()方法]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/120525668</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/120525668</guid><author>Cavan_C</author><pubDate>Tue, 28 Sep 2021 11:36:11 +0800</pubDate><description><![CDATA[SpringApplication实例run()方法源码


/**
 * Run the Spring application, creating and refreshing a new
 * {@link ApplicationContext}.
 * @param args the application arguments (usually passed from a Java main method)
 * @return a running {@link ApplicationContext}]]></description><category></category></item><item><title><![CDATA[SpringBoot2启动流程源码分析（一） - 入口类]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/120505341</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/120505341</guid><author>Cavan_C</author><pubDate>Mon, 27 Sep 2021 11:41:23 +0800</pubDate><description><![CDATA[1、启动入口代码


@SpringBootApplication
public class DemoApplication {

  public static void main(String[] args) {
    SpringApplication.run(DemoApplication.class, args);
  }

}

2、进入run方法


public static ConfigurableApplicationContext run(Class&lt;?&gt;[] prima]]></description><category></category></item><item><title><![CDATA[Kevin读书会]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/120412125</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/120412125</guid><author>Cavan_C</author><pubDate>Wed, 22 Sep 2021 11:36:07 +0800</pubDate><description><![CDATA[专业

《图解HTTP》·上野宣   - 微信读书

《HTTP权威指南》·David Gourley Brian Totty - 微信读书



课外

《进入空气稀薄地带》

《自卑与超越》
]]></description><category></category></item><item><title><![CDATA[安全中心设计]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/120206434</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/120206434</guid><author>Cavan_C</author><pubDate>Thu, 09 Sep 2021 18:03:08 +0800</pubDate><description><![CDATA[背景

    随着系统SAAS化，需要保证租户订单数据在互联网传输过程中的安全性。

设计要求

敏感信息的不可见性
	防止数据被篡改
	http请求的真实性
功能



加密流程


]]></description><category></category></item><item><title><![CDATA[专业知识总结]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/120190435</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/120190435</guid><author>Cavan_C</author><pubDate>Wed, 08 Sep 2021 22:30:21 +0800</pubDate><description><![CDATA[@RestController与Controller区别？

1、如果只是使用@RestController注解Controller，则Controller中的方法无法返回jsp页面，或者html，配置的视图解析器InternalResourceViewResolver不起作用，返回的内容就是return里的内容。

2、如果需要返回到指定页面，则需要用@Controller配合视图解析器InternalResourceViewResolver才行。如果需要返回json、xml或自定义mediaType内容]]></description><category></category></item><item><title><![CDATA[安全篇 - 散列算法]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/120180932</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/120180932</guid><author>Cavan_C</author><pubDate>Wed, 08 Sep 2021 15:27:05 +0800</pubDate><description><![CDATA[简介

   散列（英语：Hashing）是电脑科学中一种对数据的处理方法，通过某种特定的函数/算法（称为散列函数/算法）将要检索的项与用来检索的索引（称为散列，或者散列值）关联起来，生成一种便于搜索的数据结构（称为散列表）。旧译哈希（误以为是人名而采用了音译）。它也常用作一种信息安全的实现方法，由一串数据中经过散列算法（Hashing algorithms）计算出来的数据指纹（data fingerprint），经常用来识别文件与数据是否有被窜改，以保证文件与数据确实是由原创者所提供。

算法

...]]></description><category></category></item><item><title><![CDATA[非对称加密算法]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/120177160</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/120177160</guid><author>Cavan_C</author><pubDate>Wed, 08 Sep 2021 14:57:52 +0800</pubDate><description><![CDATA[简介

   非对称加密算法需要两个密钥：公开密钥（publickey:简称公钥）和私有密钥（privatekey:简称私钥）。公钥与私钥是一对，如果用公钥对数据进行加密，只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥，所以这种算法叫作非对称加密算法。 非对称加密算法实现机密信息交换的基本过程是：甲方生成一对密钥并将公钥公开，需要向甲方发送信息的其他角色(乙方)使用该密钥(甲方的公钥)对机密信息进行加密后再发送给甲方；甲方再用自己私钥对加密后的信息进行解密。甲方想要回复乙方时正好相反...]]></description><category></category></item><item><title><![CDATA[安全 - 对称加密篇]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/120176218</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/120176218</guid><author>Cavan_C</author><pubDate>Wed, 08 Sep 2021 11:45:20 +0800</pubDate><description><![CDATA[简介

   对称加密（也叫私钥加密）指加密和解密使用相同密钥的加密算法。有时又叫传统密码算法，就是加密密钥能够从解密密钥中推算出来，同时解密密钥也可以从加密密钥中推算出来。而在大多数的对称算法中，加密密钥和解密密钥是相同的，所以也称这种加密算法为私密密钥算法或单密钥算法。它要求发送方和接收方在安全通信之前，商定一个密钥。对称算法的安全性依赖于密钥，泄漏密钥就意味着任何人都可以对他们发送或接收的消息进行解密，所以密钥的保密性对通信的安全性至关重要。

算法

DES（Data Encryption ...]]></description><category></category></item><item><title><![CDATA[Wireshark抓包Https报文]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/119937076</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/119937076</guid><author>Cavan_C</author><pubDate>Fri, 27 Aug 2021 09:21:50 +0800</pubDate><description><![CDATA[Https请求完整流程



Client Hello



TLS版本
    TLSv1.2也是SSLv3.2.这是SSL客户端能够支持的SSL最高版本，主版本号3，次版本号2。TLS当前的版本如下：

MajorVersion
			Minor Version
			Version Type
		3
			0
			SSLv3
		3
			1
			TLS1.0
		3
			2
			TLS1.1
		3
			3
			TLS1.2
		   最后使用什么版本，得由服务端决定。...]]></description><category></category></item><item><title><![CDATA[Http响应状态码]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/119910785</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/119910785</guid><author>Cavan_C</author><pubDate>Wed, 25 Aug 2021 14:35:24 +0800</pubDate><description><![CDATA[HTTP状态码（英语：HTTP Status Code）是用以表示网页服务器超文本传输协议响应状态的3位数字代码。它由RFC 2616规范定义的，并得到RFC 2518、RFC 2817、RFC 2295、RFC 2774与RFC 4918等规范扩展。所有状态码被分为五类，状态码的第一个数字代表了响应的五种状态之一。所示的消息短语是典型的，但是可以提供任何可读取的替代方案。 除非另有说明，状态码是HTTP/1.1标准（RFC 7231）的一部分。[1]

HTTP状态码的官方注册表由互联网号码...]]></description><category></category></item><item><title><![CDATA[Http请求、响应报文结构]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/119906325</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/119906325</guid><author>Cavan_C</author><pubDate>Wed, 25 Aug 2021 10:58:49 +0800</pubDate><description><![CDATA[简介


   用于http协议交互的信息被称为http报文。请求端（客户端）的http报文叫做请求报文，响应端（服务端）的叫做响应报文。http报文本身是由多行数据构成的字符串文本。http报文大致可分为报文首部和报文主体两块。两者由最初出现的空行来划分。通常，并不一定要有报文主体。


请求报文

http请求报文有请求行（request line）、请求头部（header）、空行和请求数据4个部分组成。

如下图：






...]]></description><category></category></item><item><title><![CDATA[数字签名算法及JAVA实现案例]]></title><link>https://blog.youkuaiyun.com/Cavan_C/article/details/119885103</link><guid>https://blog.youkuaiyun.com/Cavan_C/article/details/119885103</guid><author>Cavan_C</author><pubDate>Tue, 24 Aug 2021 11:29:21 +0800</pubDate><description><![CDATA[目录

简介

特征

鉴权

完整性

不可抵赖

简介

   数字签名（又称公钥数字签名）是只有信息的发送者才能产生的别人无法伪造的一段数字串，这段数字串同时也是对信息的发送者信息真实性的一个有效证明。

特征

鉴权

   公钥加密系统允许任何人在发送信息时使用公钥进行加密，接收信息时使用私钥解密。当然，接受者不可能百分之百确信发送者的真实身份，而只能在密码系统未被破译的情况下才有理由确信。

   鉴权的重要性在财务数据上表现得尤为突出。举个例子，假设一家银行将指令由它的...]]></description><category></category></item></channel></rss>