02 2024 档案
摘要:探寻Mysql的世界: MySQL查询缓存详解 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 探寻Mysql的世界: MySQL查询缓存详解MySQL 查询缓存介绍MySQL 查询缓存管理和配置MySQL 缓存机制缓存规则缓存机制中的内存管理 M
阅读全文
摘要:探寻Mysql的世界: MySQL三大日志(binlog、redo log和undo log)详解 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 探寻Mysql的世界: MySQL三大日志(binlog、redo log和undo log)详解前
阅读全文
摘要:探寻Mysql的世界: MySQL索引详解 文章目录 探寻Mysql的世界: MySQL索引详解索引介绍索引的优缺点索引底层数据结构选型Hash 表二叉查找树(BST)AVL 树红黑树B 树& B+树 索引类型总结主键索引(Primary Key)二级索引聚簇索引与非聚簇索引聚簇索引(聚集索引)聚簇
阅读全文
摘要:探寻Mysql的世界: MySQL高性能优化规范建议总结 文章目录 探寻Mysql的世界: MySQL高性能优化规范建议总结数据库命名规范数据库基本设计规范所有表必须使用 InnoDB 存储引擎数据库和表的字符集统一使用 UTF8所有表和字段都需要添加注释尽量控制单表数据量的大小,建议控制在 500
阅读全文
摘要:探寻Mysql的世界: MySQL自增主键一定是连续的吗 文章目录 探寻Mysql的世界: MySQL自增主键一定是连续的吗自增值保存在哪里?自增值不连续的场景自增值不连续场景 1自增值不连续场景 2自增值不连续场景 3自增值不连续场景 4 小结 作者:飞天小牛肉 原文:https://mp.wei
阅读全文
摘要:探寻Mysql的世界:InnoDB存储引擎对MVCC的实现 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 探寻Mysql的世界:InnoDB存储引擎对MVCC的实现多版本并发控制 (Multi-Version Concurrency Contro
阅读全文
摘要:探寻Mysql的世界:MySQL隐式转换造成索引失效 文章目录 **探寻Mysql的世界:MySQL隐式转换造成索引失效**前言数据准备SQL 测试分析和总结 本文来自木木匠投稿。 本次测试使用的 MySQL 版本是 5.7.26,随着 MySQL 版本的更新某些特性可能会发生改变,本文不代表所述观
阅读全文
摘要:探寻Mysql的世界:SQL语句在MySQL中的执行过程 文章目录 **探寻Mysql的世界:SQL语句在MySQL中的执行过程**一 MySQL 基础架构分析1.1 MySQL 基本架构概览1.2 Server 层基本组件介绍1) 连接器2) 查询缓存(MySQL 8.0 版本后移除)3) 分析器
阅读全文
摘要:探寻Mysql的世界:面试前必知的关键要点与深度洞察 文章目录 **探寻Mysql的世界:面试前必知的关键要点与深度洞察**基本操作数据库操作表的操作数据操作字符集编码数据类型(列类型)列属性(列约束)建表规范SELECTUNION子查询连接查询(join)TRUNCATE备份与还原视图事务(tra
阅读全文
摘要:探寻MongoDB的世界:面试前必知的关键要点与深度洞察(下) 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 **探寻MongoDB的世界:面试前必知的关键要点与深度洞察(下)**MongoDB 索引MongoDB 索引有什么用?MongoDB
阅读全文
摘要:探寻MongoDB的世界:面试前必知的关键要点与深度洞察 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 探寻MongoDB的世界:面试前必知的关键要点与深度洞察MongoDB 基础MongoDB 是什么?MongoDB 的存储结构是什么?文档集合
阅读全文
摘要:想玩转Shell 编程?看这一篇就够了! 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 想玩转Shell 编程?看这一篇就够了!走进 Shell 编程的大门为什么要学 Shell?什么是 Shell?Shell 编程的 Hello World S
阅读全文
摘要:想玩转操作系统 ?看这一篇就够了! 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 想玩转操作系统 ?看这一篇就够了!内存管理内存管理主要做了什么?什么是内存碎片?常见的内存管理方式有哪些?连续内存管理非连续内存管理 虚拟内存什么是虚拟内存?有什么
阅读全文
摘要:想玩转操作系统 ?看这一篇就够了! 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 想玩转操作系统 ?看这一篇就够了!操作系统基础什么是操作系统?操作系统主要有哪些功能?常见的操作系统有哪些?WindowsUnixLinuxMac OS 用户态和内
阅读全文
摘要:想玩转Linux ?看这一篇就够了! 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 想玩转Linux ?看这一篇就够了!初探 LinuxLinux 简介Linux 诞生常见的 Linux 发行版本 Linux 文件系统Linux 文件系统简介in
阅读全文
摘要:字节大佬含泪吐血总结系列之 TCP 传输可靠性保障(传输层) 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 TCP 传输可靠性保障(传输层)TCP 如何保证传输的可靠性?TCP 如何实现流量控制?TCP 的拥塞控制是怎
阅读全文
摘要:字节大佬含泪吐血总结系列之 三次握手和四次挥手(传输层) 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 三次握手和四次挥手(传输层)建立连接-TCP 三次握手为什么要三次握手?第 2 次握手传回了 ACK,为什么还要传
阅读全文
摘要:字节大佬含泪吐血总结系列之 计算机网络常见面试题(下) 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 计算机网络常见面试题(下)TCP 与 UDPTCP 与 UDP 的区别(重要)什么时候选择 TCP,什么时候选 UD
阅读全文
摘要:字节大佬含泪吐血总结系列之 计算机网络常见面试题(上) 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 计算机网络常见面试题(上)计算机网络基础网络分层模型OSI 七层模型是什么?每一层的作用是什么?TCP/IP 四层模
阅读全文
摘要:字节大佬含泪吐血总结系列之 OSI 和 TCP/IP 网络分层模型 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 OSI 和 TCP/IP 网络分层模型OSI 七层模型TCP/IP 四层模型应用层(Applicatio
阅读全文
摘要:字节大佬含泪吐血总结系列之 网络攻击常见手段 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 网络攻击常见手段IP 欺骗IP 是什么?通过 IP 地址我们能知道什么?IP 欺骗技术是什么?如何缓解 IP 欺骗? SYN
阅读全文
摘要:字节大佬含泪吐血总结系列之 NAT 协议详解(网络层) 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 NAT 协议详解(网络层)应用场景细节划重点 应用场景 NAT 协议(Network Address Transla
阅读全文
摘要:字节大佬含泪吐血总结系列之 HTTP vs HTTPS(应用层) 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 HTTP vs HTTPS(应用层)HTTP 协议HTTP 协议介绍HTTP 协议通信过程HTTP 协议优
阅读全文
摘要:字节大佬含泪吐血总结系列之 HTTP 常见状态码总结(应用层) 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 HTTP 常见状态码总结(应用层)1xx Informational(信息性状态码)2xx Success(
阅读全文
摘要:字节大佬含泪吐血总结系列之 HTTP 1.0 vs HTTP 1.1(应用层) 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 HTTP 1.0 vs HTTP 1.1(应用层)响应状态码缓存处理HTTP/1.0HTTP
阅读全文
摘要:字节大佬含泪吐血总结系列之 DNS 域名系统详解 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 DNS 域名系统详解DNS 服务器DNS 工作流程DNS 报文格式DNS 记录参考 DNS(Domain Name Sys
阅读全文
摘要:字节大佬含泪吐血总结系列之 《计算机网络》(谢希仁) 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 《计算机网络》(谢希仁)1. 计算机网络概述1.1. 基本术语1.2. 重要知识点总结 2. 物理层(Physical
阅读全文
摘要:字节大佬含泪吐血总结系列之 ARP 协议详解(网络层) 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 ARP 协议详解(网络层)MAC 地址ARP 协议工作原理同一局域网内的 MAC 寻址不同局域网内的 MAC 寻址
阅读全文
摘要:字节大佬含泪吐血总结系列之 应用层常见协议 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 应用层常见协议HTTP:超文本传输协议Websocket:全双工通信协议SMTP:简单邮件传输(发送)协议POP3/IMAP:邮
阅读全文
摘要:字节大佬含泪吐血总结系列之 树 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 树二叉树的分类满二叉树完全二叉树平衡二叉树 二叉树的存储链式存储顺序存储 二叉树的遍历先序遍历中序遍历后序遍历 树就是一种类似现实生活中的树
阅读全文
摘要:字节大佬含泪吐血总结系列之 红黑树 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 红黑树红黑树介绍为什么需要红黑树?**红黑树特点**红黑树数据结构红黑树结构实现1.左倾染色2.右倾染色3.左旋调衡3.1 一次左旋3.
阅读全文
摘要:字节大佬含泪吐血总结系列之 线性数据结构 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 线性数据结构1. 数组2. 链表2.1. 链表简介2.2. 链表分类2.2.1. 单链表2.2.2. 循环链表2.2.3. 双向链
阅读全文
摘要:字节大佬含泪吐血总结系列之 堆 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 堆堆什么是堆堆的用途堆的分类堆的存储堆的操作插入元素删除堆顶元素自底向上堆化自顶向下堆化 堆的操作总结 堆排序建堆排序 堆 什么是堆 堆是一
阅读全文
摘要:字节大佬含泪吐血总结系列之 图 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之 图图的基本概念顶点边度无向图和有向图无权图和带权图 图的存储邻接矩阵存储邻接表存储 图的搜索广度优先搜索深度优先搜索 图是一种较为复杂的非线
阅读全文
摘要:字节大佬含泪吐血总结系列之布隆过滤器 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之布隆过滤器什么是布隆过滤器?布隆过滤器的原理介绍布隆过滤器使用场景编码实战通过 Java 编程手动实现布隆过滤器利用 Google 开源
阅读全文
摘要:字节大佬含泪吐血总结系列之剑指offer部分编程题 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之剑指offer部分编程题斐波那契数列跳台阶问题变态跳台阶问题二维数组查找替换空格数值的整数次方调整数组顺序使奇数位于偶数前
阅读全文
摘要:字节大佬含泪吐血总结系列之常见的字符串算法题 文章目录 字节大佬含泪吐血总结系列之常见的字符串算法题1. KMP 算法2. 替换空格3. 最长公共前缀4. 回文串4.1. 最长回文串4.2. 验证回文串4.3. 最长回文子串4.4. 最长回文子序列 5. 括号匹配深度6. 把字符串转换成整数 作者:
阅读全文
摘要:字节大佬含泪吐血总结系列之常见的链表算法题 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之常见的链表算法题1. 两数相加题目描述问题分析Solution 2. 翻转链表题目描述问题分析Solution 3. 链表中倒数第
阅读全文
摘要:字节大佬含泪吐血总结系列之常见数据结构经典LeetCode题目推荐 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之常见数据结构经典LeetCode题目推荐数组链表栈与队列二叉树图堆 数组 704.二分查找:https:/
阅读全文
摘要:字节大佬含泪吐血总结系列之经典算法思想 原文地址:https://github.com/Snailclimb/JavaGuide 文章目录 字节大佬含泪吐血总结系列之经典算法思想贪心算法算法思想一般解题步骤LeetCode 动态规划算法思想一般解题步骤LeetCode 回溯算法算法思想一般解题步骤l
阅读全文
摘要:字节大佬含泪吐血总结系列之十大经典排序算法 本文转自:http://www.guoyaohua.com/sorting.html,JavaGuide(https://github.com/Snailclimb/JavaGuide) 对其做了补充完善。 引言 所谓排序,就是使一串记录,按照其中的某个或
阅读全文
摘要:Java开发 你应该知道 Java 值传递吧 文章目录 Java开发 你应该知道 Java 值传递吧形参&实参值传递&引用传递为什么 Java 只有值传递?案例 1:传递基本类型参数案例 2:传递引用类型参数 1案例 3:传递引用类型参数 2 引用传递是怎么样的?为什么 Java 不引入引用传递呢?
阅读全文
摘要:Java开发 你应该知道 Java 魔法类 Unsafe吧 文章目录 Java开发 你应该知道 Java 魔法类 Unsafe吧Unsafe 介绍Unsafe 创建Unsafe 功能内存操作介绍典型应用 内存屏障介绍典型应用 对象操作介绍典型应用 数组操作介绍典型应用 CAS 操作介绍典型应用 线程
阅读全文
摘要:Java开发 你应该知道 Java 语法糖吧 文章目录 Java开发 你应该知道 Java 语法糖吧什么是语法糖?Java 中有哪些常见的语法糖?switch 支持 String 与枚举泛型自动装箱与拆箱可变长参数枚举内部类条件编译断言数值字面量for-eachtry-with-resourceLa
阅读全文
摘要:Java开发 你应该知道 Java SPI 机制吧 文章目录 Java开发 你应该知道 Java SPI 机制吧SPI 介绍何谓 SPI?SPI 和 API 有什么区别? 实战演示Service Provider InterfaceService Provider效果展示 ServiceLoader
阅读全文
摘要:Java开发 你应该知道 Java 序列化吧 文章目录 Java开发 你应该知道 Java 序列化吧什么是序列化和反序列化?常见序列化协议有哪些?JDK 自带的序列化方式KryoProtobufProtoStuffHessian总结 什么是序列化和反序列化? 如果我们需要持久化 Java 对象比如将
阅读全文
摘要:Java开发 你应该知道 Java 反射机制吧 文章目录 Java开发 你应该知道 Java 反射机制吧何为反射?反射的应用场景了解么?谈谈反射机制的优缺点反射实战获取 Class 对象的四种方式反射的一些基本操作 何为反射? 如果说大家研究过框架的底层原理或者咱们自己写过框架的话,一定对反射这个概
阅读全文
摘要:Java开发 你应该知道 Java 代理模式 文章目录 Java开发 你应该知道 Java 代理模式1. 代理模式2. 静态代理3. 动态代理3.1. JDK 动态代理机制3.1.1. 介绍3.1.2. JDK 动态代理类使用步骤3.1.3. 代码示例 3.2. CGLIB 动态代理机制3.2.1.
阅读全文
摘要:Java开发 你应该知道 final,static,this,super 关键字 文章目录 Java开发 你应该知道 final,static,this,super 关键字final 关键字static 关键字this 关键字super 关键字参考 static 关键字详解static 关键字主要有
阅读全文
摘要:2024新鲜出炉 最新Java基础常见面试题总结(下) 文章目录 2024新鲜出炉 最新Java基础常见面试题总结(下)异常Exception 和 Error 有什么区别?Checked Exception 和 Unchecked Exception 有什么区别?Throwable 类常用方法有哪些
阅读全文
摘要:2024新鲜出炉 最新Java基础常见面试题总结(中) 文章目录 2024新鲜出炉 最新Java基础常见面试题总结(中)面向对象基础面向对象和面向过程的区别创建一个对象用什么运算符?对象实体与对象引用有何不同?对象的相等和引用相等的区别如果一个类没有声明构造方法,该程序能正确执行吗?构造方法有哪些特
阅读全文
摘要:2024新鲜出炉 最新Java基础常见面试题总结(上) 文章目录 2024新鲜出炉 最新Java基础常见面试题总结(上)基础概念与常识Java 语言有哪些特点?Java SE vs Java EEJVM vs JDK vs JREJVMJDK 和 JRE 什么是字节码?采用字节码的好处是什么?为什么
阅读全文
摘要:Java开发 你应该知道 BigDecimal 文章目录 Java开发 你应该知道 BigDecimalBigDecimal 介绍BigDecimal 常见方法创建加减乘除大小比较保留几位小数 BigDecimal 等值比较问题BigDecimal 工具类分享总结 《阿里巴巴 Java 开发手册》中
阅读全文