一直不懂
码龄14年
关注
提问 私信
  • 博客:1,156,241
    社区:320
    问答:1,784
    1,158,345
    总访问量
  • 167
    原创
  • 1,240,285
    排名
  • 15,594
    粉丝
  • 37
    铁粉

个人简介:笔记

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2010-12-17
博客简介:

通往神秘的道路的专栏

查看详细资料
个人成就
  • 获得360次点赞
  • 内容获得145次评论
  • 获得1,405次收藏
  • 代码片获得1,184次分享
创作历程
  • 2篇
    2023年
  • 12篇
    2022年
  • 50篇
    2021年
  • 98篇
    2020年
  • 228篇
    2019年
  • 280篇
    2018年
成就勋章
TA的专栏
  • Spring Framework源码分析
    42篇
  • Spring Boot源码分析
    9篇
  • Spring Security源码分析
    5篇
  • Spring Data源码分析
    1篇
  • Spring Statemachine
    3篇
  • Spring核心编程思想
    20篇
  • Spring的使用
    4篇
  • Spring Security的使用
    19篇
  • Mybatis源码分析
    13篇
  • JDK源码分析
    11篇
  • Java语言特性
    1篇
  • JVM相关
    8篇
  • Java基础
    15篇
  • Java集合
    2篇
  • Java并发编程
    4篇
  • 深入理解Java虚拟机
    26篇
  • MySQL相关
    13篇
  • MySQL实战45讲
    45篇
  • MySQL技术内幕
    64篇
  • Dubbo源码分析
    4篇
  • SQL实战案例
    4篇
  • bash shell
    15篇
  • Redis核心技术与实战
  • Redis深度历险
    38篇
  • 基础工具
    4篇
  • 深入理解Kafka
    12篇
  • 通信协议
    2篇
  • 算法
    14篇
  • Zookeeper
    7篇
  • maven实战
    46篇
  • 设计模式
    8篇
  • Hive
    15篇
  • 数据结构
    2篇
  • Redis笔记
    31篇
  • 面试题
    15篇
  • Drool学习笔记
    8篇
  • Netty权威指南
    21篇
  • HBase笔记
    20篇
  • Storm笔记
    10篇
  • Hadoop权威指南
    51篇
  • 分布式
    4篇
  • 集群
    4篇
  • 架构师之路
    7篇
  • Elasticsearch入门
    7篇
  • 程序设计
  • 日志监控
    1篇
  • 网站点击流实时数据分析
    5篇
  • 网站点击流数据分析
    11篇
  • scala基础
    1篇
  • Sqoop
    1篇
  • Spark学习笔记
    1篇
  • Azkaban
    1篇
  • Flume
兴趣领域 设置
  • 后端
    springspring boot架构分布式中间件
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

mac M1在根目录下创建文件夹时出现Read-only file system

在网上查了很多资料,都说要关闭SIP,但是关闭了SIP以后会发现还是有这个问题,根本解决不了。
转载
发布博客 2023.01.29 ·
1293 阅读 ·
0 点赞 ·
1 评论 ·
2 收藏

算法:小于n的最大数

在这个遍历过程中,注意后一位如果比nums数组中的最小值还要小,那么就应该这一位要找寻的最大值再减一。首先讲nums数组进行排序,注意下需要判断我们要寻找的最大值,如果n中的每一位数都比nums数组最小值都要小,那么我们要找寻的最大数长度为原来的n长度减一。题目要求:给定一个数组例如nums=[2,3,4,5],n=2345,求使用nums中的数字,组成一个不大于N的最大的数字。这个题目在网上有很多解答,但是大部分解答都有问题,没法完全的覆盖所有的case,因此在这里记录下我的解答。
转载
发布博客 2023.01.29 ·
2521 阅读 ·
0 点赞 ·
2 评论 ·
4 收藏

明明加了唯一索引,为什么还是产生重复数据?

前段时间我踩过一个坑:在mysql8的一张innodb引擎的表中,加了唯一索引,但最后发现数据竟然还是重复了。到底怎么回事呢?本文通过一次踩坑经历,聊聊唯一索引,一些有意思的知识点。
转载
发布博客 2022.09.24 ·
580 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

bash正则表达式

Linux中的不同应用程序可能会用不同类型的正则表达式。这其中包括编程语言(Java、 Perl和Python)、 Linux实用工具(比如sed编辑器、 gawk程序和grep工具)以及主流应用(比如MySQL和PostgreSQL数据库服务器)。正则表达式是通过正则表达式引擎(regular expression engine)实现的。正则表达式引擎是一套底层软件,负责解释正则表达式模式并使用这些模式进行文本匹配。在Linux中,有两种流行的正则表达式引擎: POSIX基础正则表达式( basi
转载
发布博客 2022.07.03 ·
1557 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

初识sed和gawk

Linux系统提供了两个常见的具备上述功能的工具。本节将会介绍Linux世界中最广泛使用的两个命令行编辑器: sed和gawk。sed编辑器被称作流编辑器(stream editor),和普通的交互式文本编辑器恰好相反。在交互式文本编辑器中(比如vim),你可以用键盘命令来交互式地插入、删除或替换数据中的文本。流编辑器则会在编辑器处理数据之前基于预先提供的一组规则来编辑数据流。sed编辑器可以根据命令来处理数据流中的数据,这些命令要么从命令行中输入,要么存储在一个命令文本文件中。 sed编辑器会执行下列操
转载
发布博客 2022.07.03 ·
299 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

图形化桌面环境中的脚本编程

创建交互式shell脚本最常用的方法是使用菜单。提供各种选项可以帮助脚本用户了解脚本能做什么和不能做什么。通常菜单脚本会清空显示区域,然后显示可用的选项列表。用户可以按下与每个选项关联的字母或数字来选择选项。shell脚本菜单的核心是case命令。 case命令会根据用户在菜单上的选择来执行特定命令。后面几节将会带你逐步了解创建基于菜单的shell脚本的步骤。创建菜单的第一步显然是决定在菜单上显示哪些元素以及想要显示的布局方式。在创建菜单前,通常要先清空显示器上已有的内容。这样就能在干净的、没有干扰
转载
发布博客 2022.06.23 ·
874 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

创建Bash函数

有两种格式可以用来在bash shell脚本中创建函数。第一种格式采用关键字function,后跟分配给该代码块的函数名。name属性定义了赋予函数的唯一名称。脚本中定义的每个函数都必须有一个唯一的名称。commands是构成函数的一条或多条bash shell命令。在调用该函数时, bash shell会按命令在函数中出现的顺序依次执行,就像在普通脚本中一样。在bash shell脚本中定义函数的第二种格式更接近于其他编程语言中定义函数的方式。函数名后的空括号表明正在定义的是一个函数。这种格式的命
转载
发布博客 2022.06.16 ·
1222 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【排序】图解桶排序

一、思想一句话总结:划分多个范围相同的区间,每个子区间自排序,最后合并。桶排序是计数排序的扩展版本,计数排序可以看成每个桶只存储相同元素,而桶排序每个桶存储一定范围的元素,通过映射函数,将待排序数组中的元素映射到各个对应的桶中,对每个桶中的元素进行排序,最后将非空桶中的元素逐个放入原序列中。桶排序需要尽量保证元素分散均匀,否则当所有数据集中在同一个桶中时,桶排序失效。二、图解过程三、核心代码public static void bucketSort(int[] arr){ /
转载
发布博客 2022.03.20 ·
351 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

一文弄懂计数排序算法

01 计数排序算法概念计数排序不是一个比较排序算法,该算法于1954年由 Harold H. Seward提出,通过计数将时间复杂度降到了O(N)。02 基础版算法步骤第一步:找出原数组中元素值最大的,记为max。第二步:创建一个新数组count,其长度是max加1,其元素默认值都为0。第三步:遍历原数组中的元素,以原数组中的元素作为count数组的索引,以原数组中的元素出现次数作为count数组的元素值。第四步:创建结果数组result,起始索引index。第五步:遍历count数组,找出其
转载
发布博客 2022.03.20 ·
816 阅读 ·
2 点赞 ·
0 评论 ·
8 收藏

常用网址收藏

macwk(mac破解版软件alfred)程序猿DD日拱一兵日拱一兵Github迅捷PDF转换javadoopLinux命令搜索java常用工具PhantomThief
原创
发布博客 2022.03.20 ·
13074 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

架构师之路21年文章精选

这几篇,首先推荐大家读一读:《我们从来都反对“大中台,小前台”的架构设计!》2.1W+《关于MySQL,这篇都没人赞,太没天理了!》1.3W+《关于MySQL异步复制,MGR内核原理!》《求解“微信群覆盖”的三种方法:暴力,染色,链表,并查集》关于底层内核的文章,似乎阅读越来越低了。今年花在开源学习上的时间并不多:《1万行代码,单机50万QPS,今年最值得学习的开源RPC框架!》2.3W+《开源微服务API网关,单核2万QPS,今年最值得学习的开源项目》2W+大家今年阅读开源代码了吗?数
转载
发布博客 2022.02.17 ·
373 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

InnoDB一棵B+树可以存放多少行数据?

一个问题?InnoDB一棵B+树可以存放多少行数据?这个问题的简单回答是:约2千万。为什么是这么多呢?因为这是可以算出来的,要搞清楚这个问题,我们先从InnoDB索引数据结构、数据组织方式说起。我们都知道计算机在存储数据的时候,有最小存储单元,这就好比我们今天进行现金的流通最小单位是一毛。在计算机中磁盘存储数据最小单元是扇区,一个扇区的大小是512字节,而文件系统(例如XFS/EXT4)他的最小单元是块,一个块的大小是4k,而对于我们的InnoDB存储引擎也有自己的最小储存单元——页(Page),一个页
转载
发布博客 2022.01.18 ·
206 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

深入详解ThreadLocal内存泄漏问题

1. 造成内存泄漏的原因?threadLocal是为了解决对象不能被多线程共享访问的问题,通过threadLocal.set方法将对象实例保存在每个线程自己所拥有的threadLocalMap中,这样每个线程使用自己的对象实例,彼此不会影响达到隔离的作用,从而就解决了对象在被共享访问带来线程安全问题。如果将同步机制和threadLocal做一个横向比较的话,同步机制就是通过控制线程访问共享对象的顺序,而threadLocal就是为每一个线程分配一个该对象,各用各的互不影响。打个比方说,现在有100个同学需
转载
发布博客 2022.01.13 ·
2498 阅读 ·
2 点赞 ·
2 评论 ·
12 收藏

围观了张一鸣近10年的发文,我整理了这几条建议

这几天抽空把张一鸣的所有围脖看了一遍,发现2010年的最好,就是他30岁左右的时候,那时候刚创业没多久,认真分享自己的思考和观点。到了2012年附近,开始做某头条,每天都是大量转发某头条上的文章到某博,干货变少了。后面就更新得越来越少。我从他的某博中,试图找到他成功的钥匙,得到了一些只言片语,但是仅仅是这些只言片语,我都觉得对我的启发很大。他从南开大学毕业,妻子是大学同学,毕业后去过微软,后来从微软离职,然后去过饭否,应该跟过王兴王慧文一阵子,后来还是自己创业。刚开始项目是某房,类似于某居客或者某壳
转载
发布博客 2022.01.12 ·
615 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Guava常用工具

1. 基本工具1.1 使用和避免nullGuava用Optional<T>表示可能为null的T类型引用。一个Optional实例可能包含非null的引用,也可能什么也不包括。它从不说包含的是null值,而是用存在或缺失来表示。但Optional从不会包含null值引用。Optional<Integer> possible = Optional.of(5);possible.isPresent(); // returns truepossible.get(); //
转载
发布博客 2021.11.28 ·
2010 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

MySQL解惑——GROUP BY隐式排序

MySQL中GROUP BY隐式排序是什么概念呢? 主要是其它RDBMS没有这样的概念,如果没有认真了解过概念,对这个概念会感觉有点困惑,我们先来看看官方文档的介绍:官方文档MySQL 5.7 Reference Manual中的“.2.1.14 ORDER BY Optimization”章节有如下介绍:GROUP BY implicitly sorts by default (that is, in the absence of ASC or DESC designators for GROUP
转载
发布博客 2021.10.10 ·
701 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

MySQL Online DDL ALGORITHM区别

导读:MySQL的Online DDL长期饱受诟病,8.0之后有没有好一些呢…本文重点讨论常见的几种Online DDL需求:增加新列(ADD COLUMN)修改列定义(MODIFY COLUMN)增加/删除索引(ADD/DROP INDEX)其他的DDL操作相对比较少,所以本文就不讨论了。此外,本文也不讨论非InnoDB引擎以及非普通索引(如全文索引、空间索引)的场景。我们先看下ALTER TABLE时ALGORITHM可以指定的几种方式:COPY ,是指DDL时,会生成(临时)新表
转载
发布博客 2021.09.30 ·
1753 阅读 ·
2 点赞 ·
0 评论 ·
4 收藏

控制bash脚本

处理信号Linux利用信号与运行在系统中的进程进行通信。可以通过对脚本进行编程,使其在收到特定信号时执行某些命令,从而控制shell脚本的操作。重温 Linux 信号Linux系统和应用程序可以生成超过30个信号。表16-1列出了在Linux编程时会遇到的最常见的Linux系统信号。表16-1 Linux信号信 号值描 述1SIGHUP挂起进程2SIGINT终止进程3SIGQUIT停止进程9SIGKILL无条件终止进程15SIGTER
转载
发布博客 2021.09.12 ·
1636 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

使用Bash呈现数据

理解输入和输出至此你已经知道了两种显示脚本输出的方法: 在显示器屏幕上显示输出 将输出重定向到文件中这两种方法要么将数据输出全部显示,要么什么都不显示。但有时将一部分数据在显示器上显示,另一部分数据保存到文件中也是不错的。对此,了解Linux如何处理输入输出能够帮助你就能将脚本输出放到正确位置。标准文件描述符Linux系统将每个对象当作文件处理。这包括输入和输出进程。 Linux用文件描述符(file descriptor) 来标识每个文件对象。文件描述符是一个非负整数,可以唯一标识会话中打
转载
发布博客 2021.08.22 ·
464 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

处理用户输入

命令行参数向shell脚本传递数据的最基本方法是使用命令行参数。命令行参数允许在运行脚本时向命令行添加数据。$ ./addem 10 30本例向脚本addem传递了两个命令行参数(10和30)。脚本会通过特殊的变量来处理命令行参数。读取参数bash shell会将一些称为位置参数(positional parameter)的特殊变量分配给输入到命令行中的所有参数。这也包括shell所执行的脚本名称。位置参数变量是标准的数字:$0是程序名,$1是第一个参数, $2是第二个参数,依次类推,直到第九个
转载
发布博客 2021.08.19 ·
314 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏
加载更多