<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_22866497的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_22866497</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_22866497]]></copyright><item><title><![CDATA[狂人日记读书札记]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/136158911</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/136158911</guid><author>qq_22866497</author><pubDate>Sun, 18 Feb 2024 22:11:18 +0800</pubDate><description><![CDATA[狂人日记：揭示了封建礼教的“吃人”本质，表现作者对以封建礼教为主体内涵的中国封建文化的反抗，也表现了作者审核的忏悔意识。廿（nian 4声）
	孔乙己：封建文化和封建教育思想对孔乙己的毒害。羼（chan 4声 掺杂）
	药：封建统治给人民造成的麻木和愚昧。蹩（bie 2声）赸（shan 4声 走开）
	故乡：我想：希望本是无所谓有，无所谓无的。这正如地上的路；其实地上本没有路，走的人多了，也便成了路。猹（cha 2声）睢（sui 1声）
	阿Q正传：阿Q是辛亥革命前后中国的典型代表之一，鲁迅对阿Q形象精妙地]]></description><category></category></item><item><title><![CDATA[傅雷家书读书札记]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/136158760</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/136158760</guid><author>qq_22866497</author><pubDate>Sun, 18 Feb 2024 21:03:27 +0800</pubDate><description><![CDATA[夫妇之间只有彻底谅解，全心包容，经常忍让，并且感情真挚不渝，对生活有一致的看法，有共同的崇高理想与信念，才能在人生的旅途上平安度过大大小小的风波，成为琴瑟和谐的终身伴侣。在众生万物前面不自居为"万物之灵"，方能祛除我们的狂妄，打破纸醉金迷的俗梦，养成淡泊洒脱的胸怀，同时扩大我们的同情心。最可厌的莫如自以为是，自作解人。我们一辈子追求的，有史以来多少世代的人的追求，无非是perfection，但永远是追求不到的，因为人有理想、幻想，用无止境，所以perfection像水中月、镜中花、始终可望而不可即。]]></description><category></category></item><item><title><![CDATA[BootLoader引导启动程序]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/122802346</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/122802346</guid><author>qq_22866497</author><pubDate>Sun, 06 Feb 2022 22:56:11 +0800</pubDate><description><![CDATA[BootLoader引导启动程序Boot引导程序BIOS引导原理写一个Boot引导程序创建虚拟机软盘镜像在Bochs上运行Boot程序
BootLoader引导启动程序原本由Boot引导程序和Loader引导加载程序两部分构成。Boot引导程序主要负责开机启动和加载Loader程序；Loader引导加载程序则用于完成配置和硬件工作环境、引导加载内核等任务。
Boot引导程序
计算机上电后，首先经过BIOS上电自检，这个过程会检测硬件设备是否有问题。如果检测没有问题的话，将根据BIOS的启动项配置选择引导设备]]></description><category></category></item><item><title><![CDATA[1.环境搭建]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/121712939</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/121712939</guid><author>qq_22866497</author><pubDate>Sat, 04 Dec 2021 12:06:21 +0800</pubDate><description><![CDATA[环境搭建操作系统安装virtual box虚拟机安装centos 7
操作系统
我是在MAC OS上来搭建实验环境的。
安装virtual box虚拟机
由于之前自己搭建k8s集群时已经在机器上安装了virtual box虚拟机，网上关于如何在mac上安装vitrual box的教程也很多，在此就不赘述了。
安装centos 7
之前安装virtual box时，已经在虚拟机上安装了centos 7操作系统，网上关于安装centos 7的教程也比较多，故在此也不再赘述。

...]]></description><category></category></item><item><title><![CDATA[队列]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/106454248</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/106454248</guid><author>qq_22866497</author><pubDate>Sun, 31 May 2020 13:45:27 +0800</pubDate><description><![CDATA[队列队列的概念循环队列链式队列电路布线优先级队列双端队列
队列的概念
队列是一种限定存取位置的线性表。它只允许在表的一端插入，在另一端删除。
循环队列
循环队列有两个指针，一个front和一个rear指针，当front=rear时队列为空，当(rear + 1) % maxSize = front时，队列满。
链式队列
队列的队头指针指向单链表的第一个结点，队尾指针指向单链表的最后一个结点。用单链表表示的链式队列特别适合于数据元素变动比较大的情形，而且不存在队列满而产生溢出的情况。
电路布线
public ]]></description><category></category></item><item><title><![CDATA[栈]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/106313384</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/106313384</guid><author>qq_22866497</author><pubDate>Sun, 24 May 2020 15:59:01 +0800</pubDate><description><![CDATA[栈栈的定义栈的应用栈与递归用回溯法求解迷宫问题
栈的定义
栈可以定义为只允许在表的末端进行插入和删除的线性表。允许插入的一端称为栈顶，而不允许插入和删除的一端叫做栈底。栈有两种典型的存储表示，基于数组的存储表示和基于链表的存储表示。基于数组的存储表示实现的栈称为顺序栈，基于链表的存储表示实现的栈称为链式栈。
栈的应用

括号匹配

public void printMatchPairs(String expression) {
        Stack&lt;Integer&gt; stack = new]]></description><category></category></item><item><title><![CDATA[IP选路]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/106245362</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/106245362</guid><author>qq_22866497</author><pubDate>Wed, 20 May 2020 22:18:31 +0800</pubDate><description><![CDATA[IP选路选路原理ICMP主机与网络不可达差错转发与不转发ICMP重定向差错ICMP路由器发现报文
选路原理

IP搜索路由表的几个步骤
(1) 搜索匹配的主机地址
(2) 搜索匹配的网络地址
(3) 搜索默认表项
路由表
(1) 对于一个给定的路由器，可以打印出五中不同的标志：
U 该路由可以使用。
G 该路由是一个网关。如果没有设置该标志，说明目的地是直接相连的。
H 该路由是到一个主机，也就是说，目的地是一个完整的主机地址。如果没有设置该标志，说明该路由是到一个网络，而目的地址是一个网络地址：一个网络号]]></description><category></category></item><item><title><![CDATA[Internet控制报文协议]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/106174718</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/106174718</guid><author>qq_22866497</author><pubDate>Sun, 17 May 2020 15:14:40 +0800</pubDate><description><![CDATA[Internet控制报文协议什么是ICMP(Internet控制报文协议)ICMP报文的类型ICMP端口不可达报文
什么是ICMP(Internet控制报文协议)
ICMP是IP层的一个组成部分，它传递差错报文以及其他需要注意的信息。
ICMP是在IP数据报内部被传输的。

ICMP报文的类型
ICMP报文的类型如下表，分两种类型，查询报文和差错报文。



ICMP端口不可达报文
如果收到一份UDP数据报而目的端口与某个正在适用的进程不相符，那么UDP返回一个ICMP不可达报文。


...]]></description><category></category></item><item><title><![CDATA[堆]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/106173466</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/106173466</guid><author>qq_22866497</author><pubDate>Sun, 17 May 2020 13:52:36 +0800</pubDate><description><![CDATA[堆什么是堆最小堆的实现
什么是堆
堆是有一种特殊的二叉树，堆又分为两种，最小堆和最大堆。堆的官方定义如下：
如果有一个关键码的集合K={k0,k1,k2,k3…,k(n-1)}，把它的所有元素按照完全二叉树的顺序存储方式存放在一个一维数组中，并且满足ki&lt;=k(2i+1)且ki&lt;=k(2i+2)(或者ki&gt;=k(2i+1)且ki&gt;=k(2i+2))i=0,1,…,(n-2)/2，则称这个集合为最小堆或最大堆。通俗一点来说，就是一个完全二叉树的任意一个结点如果满足父结点比子女结点小则为]]></description><category></category></item><item><title><![CDATA[二叉树]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/105782587</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/105782587</guid><author>qq_22866497</author><pubDate>Mon, 27 Apr 2020 09:00:22 +0800</pubDate><description><![CDATA[二叉树二叉树抽象数据结构定义以广义表的形式创建二叉树二叉树的先序遍历
二叉树抽象数据结构定义
public class BinaryTreeNode {
    private String value;
    private BinaryTreeNode leftChild;
    private BinaryTreeNode rightChild;

    public BinaryTr...]]></description><category></category></item><item><title><![CDATA[线索二叉树]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/105750104</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/105750104</guid><author>qq_22866497</author><pubDate>Sat, 25 Apr 2020 15:06:37 +0800</pubDate><description><![CDATA[线索二叉树什么是线索二叉树线索二叉树的实现
什么是线索二叉树

一般约定，利用空的leftChild域存放结点的前驱结点指针，利用空的rightChild域存放结点的后继结点指针。这一类指示前驱与后继的指针叫做"线索"，加上了线索的二叉树叫做线索二叉树。

和二叉树相比较而言，线索二叉树多了两个int类型的域，一个是ltag，用来表示leftChild是左孩子还是前驱结点。一个是rtag，用来表示...]]></description><category></category></item><item><title><![CDATA[ARP地址解析协议和RARP逆地址解析协议]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/105746700</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/105746700</guid><author>qq_22866497</author><pubDate>Sat, 25 Apr 2020 11:24:42 +0800</pubDate><description><![CDATA[ARP地址解析协议什么是ARPARP协议的报文格式要点总结
什么是ARP
ARP是地址解析协议，它提供了32位IP地址到物理链路层的物理地址的映射关系。拿最常见的以太网来说，ARP将32位IP地址映射位48位的MAC物理地址。
下面我们来看看ARP协议在我们的一次请求中所起的作用。

1.应用程序FTP客户端调用函数getHostByName将主机名转换为32bit的IP地址。这个过程由DNS完成...]]></description><category></category></item><item><title><![CDATA[排序算法]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/105650196</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/105650196</guid><author>qq_22866497</author><pubDate>Tue, 21 Apr 2020 08:54:02 +0800</pubDate><description><![CDATA[排序算法基本的排序算法示例中都会用到的swap方法冒泡排序
基本的排序算法
示例中都会用到的swap方法
	private void swap(int[] nums, int i, int j) {
        int temp = nums[i];
        nums[i] = nums[j];
        nums[j] = temp;
    }

冒泡排序

简单的冒泡排序
...]]></description><category></category></item><item><title><![CDATA[Mapper方法调用过程]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/103483612</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/103483612</guid><author>qq_22866497</author><pubDate>Tue, 10 Dec 2019 21:44:17 +0800</pubDate><description><![CDATA[文章目录Mapper方法调用过程Mapper方法调用时序MapperProxy拦截目标方法执行MapperMethod的execute方法SqlCommandMethodSignature Mapepr方法签名ParamNameResolver解析Mapper方法参数
Mapper方法调用过程
Mapper方法调用时序

@Test
  public void testMybatis() thro...]]></description><category></category></item><item><title><![CDATA[MappedStatement注册过程]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/103483550</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/103483550</guid><author>qq_22866497</author><pubDate>Tue, 10 Dec 2019 21:41:45 +0800</pubDate><description><![CDATA[文章目录MapperStatement注册过程MapperStatement注册时序XMLConfigBuilder的mapperElement方法XMLMapperBuilder的parse方法解析cacheRef标签解析cache标签解析parameterMap标签解析resultMap标签解析sql片段解析select等sql语句
MapperStatement注册过程
MapperStat...]]></description><category></category></item><item><title><![CDATA[Mapper接口的注册过程]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/103466221</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/103466221</guid><author>qq_22866497</author><pubDate>Mon, 09 Dec 2019 22:02:00 +0800</pubDate><description><![CDATA[文章目录Mapper接口的注册过程Mapper接口的注册时序SqlSession的getMapper方法MapperRegistry的getMapper方法MapperProxyFactoryMapperProxy
Mapper接口的注册过程
Mapper接口的注册时序

CachedAuthorMapper cachedAuthorMapper = sqlSession.getMapper(Ca...]]></description><category></category></item><item><title><![CDATA[Mybatis初始化流程源码解析]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/103342479</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/103342479</guid><author>qq_22866497</author><pubDate>Mon, 02 Dec 2019 07:54:08 +0800</pubDate><description><![CDATA[Mybatis初始化流程源码解析代码中如何使用Mybatis整个流程的执行时序图详细源码解析资源文件的读取实例化SqlSessionFactoryBuilder对象SqlSessionFactoryBuilder.build方法XMLConfigBuilder的parse方法解析properties节点解析settings节点加载CustomVfs加载日志配置解析typeAliases节点下的配置...]]></description><category></category></item><item><title><![CDATA[redis集群分片存储]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/96470155</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/96470155</guid><author>qq_22866497</author><pubDate>Fri, 19 Jul 2019 00:32:52 +0800</pubDate><description><![CDATA[文章目录redis集群分片存储为什么要分片存储官方集群方案搭建集群集群关心的问题Java客户端代码非官方集群方案
redis集群分片存储
为什么要分片存储
假设公司用户有3千万，用户基本信息缓存到redis中，需要内存10G，如何设计redis的缓存架构？

3千万用户，各种业务场景对用户信息的访问量很大，单台redis实例的读写瓶颈凸显。
单redis实例管理10G内存，必然影响处理效率。
re...]]></description><category></category></item><item><title><![CDATA[Redis内存管理]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/95257948</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/95257948</guid><author>qq_22866497</author><pubDate>Wed, 10 Jul 2019 00:04:20 +0800</pubDate><description><![CDATA[文章目录Redis内存管理内存分配内存压缩内存压缩过期数据的处理策略数据恢复阶段过期数据的处理策略Redis内存回收策略LRU算法LFU算法
Redis内存管理
内存分配

不同数据类型的大小限制。

Strings类型：一个String类型的value最大可以存储512M。
Lists类型：list的元素个数最多为2^32 - 1个，也就是4294967295个。
Sets类型：元素个数最多为2...]]></description><category></category></item><item><title><![CDATA[Redis持久化机制]]></title><link>https://blog.youkuaiyun.com/qq_22866497/article/details/95248253</link><guid>https://blog.youkuaiyun.com/qq_22866497/article/details/95248253</guid><author>qq_22866497</author><pubDate>Tue, 09 Jul 2019 22:30:35 +0800</pubDate><description><![CDATA[文章目录Redis持久化机制一、持久化的方式二、RDB方式三、AOF持久化方式四、演示Redis持久化机制一、持久化的方式二、RDB方式三、AOF持久化方式四、演示
Redis持久化机制
一、持久化的方式


RDB持久化。
RDB持久化方式能够在指定的时间间隔对你的数据进行快照存储。


AOF(append only file)持久化。
AOF持久化方式记录每次对服务器写的操作，当服务器重启的...]]></description><category></category></item></channel></rss>