<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[benjam1n77的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/benjam1n77</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; benjam1n77]]></copyright><item><title><![CDATA[Redis中的数据结构（五）：字典的间断遍历]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/143324426</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/143324426</guid><author>benjam1n77</author><pubDate>Tue, 29 Oct 2024 11:47:21 +0800</pubDate><description><![CDATA[对redis的字典的间断遍历的原理的深度解析]]></description><category></category></item><item><title><![CDATA[源码+图示+调试 解析Spark SortShuffleWriter全过程（非常详细！）（基于Spark 3.0.0）]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/126778803</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/126778803</guid><author>benjam1n77</author><pubDate>Thu, 24 Oct 2024 09:30:28 +0800</pubDate><description><![CDATA[spark shuffle原理+源码解析]]></description><category></category></item><item><title><![CDATA[Redis中的数据结构（四）：字典]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/129062834</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/129062834</guid><author>benjam1n77</author><pubDate>Fri, 03 Mar 2023 15:25:41 +0800</pubDate><description><![CDATA[Redis中字典数据结构的解析]]></description><category></category></item><item><title><![CDATA[Spark任务的划分和调度（基于Spark 3.0.0）]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/126513983</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/126513983</guid><author>benjam1n77</author><pubDate>Wed, 31 Aug 2022 22:39:32 +0800</pubDate><description><![CDATA[本文讲解Spark对任务进行划分和调度的原理]]></description><category></category></item><item><title><![CDATA[为什么ChannelOutboundHandler会有read方法？auto-read参数的意义？DefaultPipeline的数据流到底是怎样的？]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/126424691</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/126424691</guid><author>benjam1n77</author><pubDate>Fri, 19 Aug 2022 17:24:22 +0800</pubDate><description><![CDATA[为什么ChannelOutboundHandler会有read方法？auto-read参数的意义？DefaultPipeline的数据流到底是怎样的？]]></description><category></category></item><item><title><![CDATA[Centos7 防火墙配置详解（非常详细！）]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/126345571</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/126345571</guid><author>benjam1n77</author><pubDate>Thu, 18 Aug 2022 11:07:19 +0800</pubDate><description><![CDATA[Centos7中使用firewalld来作为防火墙，其底层调用的命令仍然是iptables等命令，但是在配置上发生了较大的变化。]]></description><category></category></item><item><title><![CDATA[Redis中的数据结构（二）：跳表]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/125845696</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/125845696</guid><author>benjam1n77</author><pubDate>Tue, 19 Jul 2022 23:52:05 +0800</pubDate><description><![CDATA[通过给集合（set）中的每个元素设定一个分数（score），这样集合中的成员可以根据分数进行从大到小的排序，这样的集合叫做有序集合（zset）。Redis中有序集合有两种实现方式：跳表和压缩列表。这篇文章将介绍Redis中跳表的实现原理。......]]></description><category></category></item><item><title><![CDATA[Redis中的数据结构（一）：字符串]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/125696899</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/125696899</guid><author>benjam1n77</author><pubDate>Mon, 11 Jul 2022 16:20:25 +0800</pubDate><description><![CDATA[分析Redis中对字符串的设计]]></description><category></category></item><item><title><![CDATA[Netty源码解析（八）之Recycler]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/125448338</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/125448338</guid><author>benjam1n77</author><pubDate>Thu, 07 Jul 2022 22:50:07 +0800</pubDate><description><![CDATA[当代码中存在大量的对某一个类的对象进行创建和销毁时，可以使用对象池（类似于线程池），因为对象的创建是耗费一定时间的，因此使用线程池可以在一定程度上提升程序的性能。例如，在PooledByteBufAllocator中，需要不停的对内存进行回收和释放，相应的就会不停地创建和回收ByteBuf，因此Netty中提供了一个对象池工具类——Recycler......]]></description><category></category></item><item><title><![CDATA[Netty源码解析（七）之FastThreadLocal]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/125049554</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/125049554</guid><author>benjam1n77</author><pubDate>Thu, 16 Jun 2022 15:40:28 +0800</pubDate><description><![CDATA[FastThreadLocal是Netty中常用的一个工具类，他的基本功能与JDK自带的ThreadLocal一样，但是性能优于ThreadLocal]]></description><category></category></item><item><title><![CDATA[Netty源码解析（六）之PooledByteBufAllocator]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/123356426</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/123356426</guid><author>benjam1n77</author><pubDate>Thu, 14 Apr 2022 16:24:39 +0800</pubDate><description><![CDATA[PooledByteBufAllocator是Netty中比较复杂的一种ByteBufAllocator，因为他涉及到对内存的缓存、分配和释放策略。]]></description><category></category></item><item><title><![CDATA[Netty源码解析（五）之ByteBuf]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/123115520</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/123115520</guid><author>benjam1n77</author><pubDate>Tue, 08 Mar 2022 16:07:33 +0800</pubDate><description><![CDATA[Netty的内存分配和内存管理可以说是Netty最复杂的内容，涉及到很多操作系统和JDK的底层知识，一篇文章肯定讲不完，那么这篇文章就先简单地讲一讲ByteBuf。

]]></description><category></category></item><item><title><![CDATA[Netty源码解析（四）之EventLoop和EventLoopGroup]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/122964042</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/122964042</guid><author>benjam1n77</author><pubDate>Thu, 24 Feb 2022 15:18:31 +0800</pubDate><description><![CDATA[前面几篇文章对Netty的服务器启动以及客户端连接做了较为详细的解析。接下来的文章，我将对Netty的各个主要的组件进行源码分析。这篇文章先介绍EventLoop和EventLoopGroup]]></description><category></category></item><item><title><![CDATA[Netty源码解析（三）之客户端的连接]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/122850900</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/122850900</guid><author>benjam1n77</author><pubDate>Wed, 16 Feb 2022 11:05:22 +0800</pubDate><description><![CDATA[在上篇文章中，我们介绍了Netty服务器启动的流程，这篇文章中，我们继续介绍客户端是如何与服务器端建立连接的。]]></description><category></category></item><item><title><![CDATA[Netty源码解析（二）之服务器启动源码]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/122731774</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/122731774</guid><author>benjam1n77</author><pubDate>Wed, 09 Feb 2022 20:43:56 +0800</pubDate><description><![CDATA[在上一篇文章中，我们对Netty启动的流程做了一个概述，这篇文章中，我将从源码出发，详细解析Netty服务器启动流程]]></description><category></category></item><item><title><![CDATA[Netty源码解析（一）之Netty启动流程（4.1.47.Final）]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/122702182</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/122702182</guid><author>benjam1n77</author><pubDate>Fri, 28 Jan 2022 14:16:50 +0800</pubDate><description><![CDATA[对Netty启动流程的详细解析]]></description><category></category></item><item><title><![CDATA[AbstractQueuedSynchronizer（AQS）超详细解析]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/121672534</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/121672534</guid><author>benjam1n77</author><pubDate>Mon, 06 Dec 2021 14:02:19 +0800</pubDate><description><![CDATA[JUC是jdk中专门处理线程的一个工具包，其中有一个非常重要的抽象类AbstractQueuedSynchronizer(AQS)。Lock、Condition都是基于AQS而开发的，本文将深入解析AQS的细节和原理。]]></description><category></category></item><item><title><![CDATA[Integer缓存 IntegerCache]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/121656599</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/121656599</guid><author>benjam1n77</author><pubDate>Wed, 01 Dec 2021 16:10:27 +0800</pubDate><description><![CDATA[关于Integer的内部类IntegerCache的详细介绍]]></description><category></category></item><item><title><![CDATA[Spark on Yarn提交任务过程]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/121421137</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/121421137</guid><author>benjam1n77</author><pubDate>Mon, 29 Nov 2021 20:46:04 +0800</pubDate><description><![CDATA[这篇文章将从源码的角度向大家展示Spark是如何提交任务到Yarn上执行的，如有错误，还请各位指出。（基于Spark 3.0.0）]]></description><category></category></item><item><title><![CDATA[Binary Lifting 倍增算法]]></title><link>https://blog.youkuaiyun.com/benjam1n77/article/details/121510279</link><guid>https://blog.youkuaiyun.com/benjam1n77/article/details/121510279</guid><author>benjam1n77</author><pubDate>Wed, 24 Nov 2021 14:12:52 +0800</pubDate><description><![CDATA[Binary Lifting 倍增算法]]></description><category></category></item></channel></rss>