{"id":18305123,"url":"https://github.com/dunwu/blog","last_synced_at":"2025-05-15T01:06:43.237Z","repository":{"id":40439227,"uuid":"152881289","full_name":"dunwu/blog","owner":"dunwu","description":":dart: 钝悟的博客","archived":false,"fork":false,"pushed_at":"2025-03-31T23:28:28.000Z","size":83564,"stargazers_count":890,"open_issues_count":2,"forks_count":242,"subscribers_count":36,"default_branch":"master","last_synced_at":"2025-04-15T00:45:50.858Z","etag":null,"topics":["blog","hexo","technology"],"latest_commit_sha":null,"homepage":"https://dunwu.github.io/blog/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc-by-sa-4.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dunwu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-10-13T14:40:54.000Z","updated_at":"2025-04-08T08:11:52.000Z","dependencies_parsed_at":"2024-11-05T15:40:01.126Z","dependency_job_id":"dff33b99-2423-4262-b048-c85671a45200","html_url":"https://github.com/dunwu/blog","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dunwu%2Fblog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dunwu%2Fblog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dunwu%2Fblog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dunwu%2Fblog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dunwu","download_url":"https://codeload.github.com/dunwu/blog/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254254041,"owners_count":22039792,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blog","hexo","technology"],"created_at":"2024-11-05T15:32:47.279Z","updated_at":"2025-05-15T01:06:38.228Z","avatar_url":"https://github.com/dunwu.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://dunwu.github.io/blog/\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e\n        \u003cimg src=\"https://raw.githubusercontent.com/dunwu/images/master/common/dunwu-logo.png\" alt=\"logo\" width=\"150px\"/\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\n  \u003ca href=\"https://github.com/dunwu/blog\"\u003e\n      \u003cimg alt=\"star\" class=\"no-zoom\" src=\"https://img.shields.io/github/stars/dunwu/blog?style=for-the-badge\"\u003e\n  \u003c/a\u003e\n\n  \u003ca href=\"https://github.com/dunwu/blog\"\u003e\n      \u003cimg alt=\"fork\" class=\"no-zoom\" src=\"https://img.shields.io/github/forks/dunwu/blog?style=for-the-badge\"\u003e\n  \u003c/a\u003e\n\n  \u003ca href=\"https://github.com/dunwu/blog/commits/master\"\u003e\n      \u003cimg alt=\"build\" class=\"no-zoom\" src=\"https://img.shields.io/github/actions/workflow/status/dunwu/blog/deploy.yml?style=for-the-badge\"\u003e\n  \u003c/a\u003e\n\n  \u003ca href=\"https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh\"\u003e\n      \u003cimg alt=\"code style\" class=\"no-zoom\" src=\"https://img.shields.io/github/license/dunwu/blog?style=for-the-badge\"\u003e\n  \u003c/a\u003e\n\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eblog\u003c/h1\u003e\n\n\u003e 💧 [Blog](https://github.com/dunwu/blog/) 是一个十年 Java 程序员的博客。\n\u003e\n\u003e - 🔁 项目同步维护：[Github](https://github.com/dunwu/blog/) | [Gitee](https://gitee.com/turnon/blog/)\n\u003e - 📖 电子书阅读：[Github Pages](https://dunwu.github.io/blog/) | [Gitee Pages](https://turnon.gitee.io/blog/)\n\n## Java\n\n### JavaCore\n\n#### [Java 基础特性](source/_posts/01.Java/01.JavaCore/01.基础特性)\n\n- [Java 基础语法特性](source/_posts/01.Java/01.JavaCore/01.基础特性/Java基础语法.md)\n- [Java 基本数据类型](source/_posts/01.Java/01.JavaCore/01.基础特性/Java基本数据类型.md)\n- [Java 面向对象](source/_posts/01.Java/01.JavaCore/01.基础特性/Java面向对象.md)\n- [Java 方法](source/_posts/01.Java/01.JavaCore/01.基础特性/Java方法.md)\n- [Java 数组](source/_posts/01.Java/01.JavaCore/01.基础特性/Java数组.md)\n- [Java 枚举](source/_posts/01.Java/01.JavaCore/01.基础特性/Java枚举.md)\n- [Java 控制语句](source/_posts/01.Java/01.JavaCore/01.基础特性/Java控制语句.md)\n- [Java 异常](source/_posts/01.Java/01.JavaCore/01.基础特性/Java异常.md)\n- [Java 泛型](source/_posts/01.Java/01.JavaCore/01.基础特性/Java泛型.md)\n- [Java 反射](source/_posts/01.Java/01.JavaCore/01.基础特性/Java反射.md)\n- [Java 注解](source/_posts/01.Java/01.JavaCore/01.基础特性/Java注解.md)\n- [Java String 类型](source/_posts/01.Java/01.JavaCore/01.基础特性/JavaString类型.md)\n\n#### [Java 高级特性](source/_posts/01.Java/01.JavaCore/02.高级特性)\n\n- [Java 正则](source/_posts/01.Java/01.JavaCore/02.高级特性/Java正则.md) - 关键词：Pattern、Matcher、捕获与非捕获、反向引用、零宽断言、贪婪与懒惰、元字符、DFA、NFA\n- [Java 编码和加密](source/_posts/01.Java/01.JavaCore/02.高级特性/Java编码和加密.md) - 关键词：Base64、消息摘要、数字签名、对称加密、非对称加密、MD5、SHA、HMAC、AES、DES、DESede、RSA\n- [Java 国际化](source/_posts/01.Java/01.JavaCore/02.高级特性/Java国际化.md) - 关键词：Locale、ResourceBundle、NumberFormat、DateFormat、MessageFormat\n- [Java JDK8](source/_posts/01.Java/01.JavaCore/02.高级特性/JDK8特性.md) - 关键词：Stream、lambda、Optional、@FunctionalInterface\n- [Java SPI](source/_posts/01.Java/01.JavaCore/02.高级特性/JavaSPI.md) - 关键词：SPI、ClassLoader\n- [JavaAgent](source/_posts/01.Java/01.JavaCore/02.高级特性/JavaAgent.md)\n\n#### [Java 容器](source/_posts/01.Java/01.JavaCore/03.容器)\n\n- [Java 容器简介](source/_posts/01.Java/01.JavaCore/03.容器/Java容器简介.md) - 关键词：泛型、Iterable、Iterator、Comparable、Comparator、Cloneable、fail-fast\n- [Java 容器之 List](source/_posts/01.Java/01.JavaCore/03.容器/Java容器之List.md) - 关键词：List、ArrayList、LinkedList\n- [Java 容器之 Map](source/_posts/01.Java/01.JavaCore/03.容器/Java容器之Map.md) - 关键词：Map、HashMap、TreeMap、LinkedHashMap、WeakHashMap\n- [Java 容器之 Set](source/_posts/01.Java/01.JavaCore/03.容器/Java容器之Set.md) - 关键词：Set、HashSet、TreeSet、LinkedHashSet、EmumSet\n- [Java 容器之 Queue](source/_posts/01.Java/01.JavaCore/03.容器/Java容器之Queue.md) - 关键词：Queue、Deque、ArrayDeque、LinkedList、PriorityQueue\n- [Java 容器之 Stream](source/_posts/01.Java/01.JavaCore/03.容器/Java容器之Stream.md)\n\n#### [Java IO](source/_posts/01.Java/01.JavaCore/04.IO)\n\n- [Java I/O 之 简介](source/_posts/01.Java/01.JavaCore/04.IO/JavaIO简介.md) - 关键词：BIO、NIO、AIO\n- [Java I/O 之 BIO](source/_posts/01.Java/01.JavaCore/04.IO/JavaIO之BIO.md) - 关键词：BIO、InputStream、OutputStream、Reader、Writer、File、Socket、ServerSocket\n- [Java I/O 之 NIO](source/_posts/01.Java/01.JavaCore/04.IO/JavaIO之NIO.md) - 关键词：NIO、Channel、Buffer、Selector、多路复用\n- [Java I/O 之序列化](source/_posts/01.Java/01.JavaCore/04.IO/JavaIO之序列化.md) - 关键词：Serializable、serialVersionUID、transient、Externalizable\n\n#### [Java 并发](source/_posts/01.Java/01.JavaCore/05.并发)\n\n- [Java 并发简介](source/_posts/01.Java/01.JavaCore/05.并发/Java并发简介.md) - 关键词：并发、线程、安全性、活跃性、性能、死锁、活锁\n- [Java 并发之内存模型](source/_posts/01.Java/01.JavaCore/05.并发/Java并发之内存模型.md) - 关键词：JMM、Happens-Before、内存屏障、volatile、synchronized、final、指令重排序\n- [Java 并发之线程](source/_posts/01.Java/01.JavaCore/05.并发/Java并发之线程.md) - 关键词：Thread、Runnable、Callable、Future、FutureTask、线程生命周期\n- [Java 并发之锁](source/_posts/01.Java/01.JavaCore/05.并发/Java并发之锁.md) - 关键词：锁、Lock、Condition、ReentrantLock、ReentrantReadWriteLock、StampedLock\n- [Java 并发之无锁](source/_posts/01.Java/01.JavaCore/05.并发/Java并发之无锁.md) - 关键词：CAS、ThreadLocal、Immutability、Copy-on-Write\n- [Java 并发之 AQS](source/_posts/01.Java/01.JavaCore/05.并发/Java并发之AQS.md) - 关键词：AQS、独占锁、共享锁\n- [Java 并发之容器](source/_posts/01.Java/01.JavaCore/05.并发/Java并发之容器.md) - 关键词：ConcurrentHashMap、CopyOnWriteArrayList\n- [Java 并发之线程池](source/_posts/01.Java/01.JavaCore/05.并发/Java并发之线程池.md) - 关键词：Executor、ExecutorService、ThreadPoolExecutor、Executors\n- [Java 并发之同步工具](source/_posts/01.Java/01.JavaCore/05.并发/Java并发之同步工具.md) - 关键词：Semaphore、CountDownLatch、CyclicBarrier\n- [Java 并发之分工工具](source/_posts/01.Java/01.JavaCore/05.并发/Java并发之分工工具.md) - 关键词：CompletableFuture、CompletionStage、ForkJoinPool\n\n#### [Java 虚拟机](source/_posts/01.Java/01.JavaCore/06.JVM)\n\n- [Java 虚拟机简介](source/_posts/01.Java/01.JavaCore/06.JVM/Java虚拟机简介.md)\n- [Java 虚拟机之内存区域](source/_posts/01.Java/01.JavaCore/06.JVM/Java虚拟机之内存区域.md) - 关键词：`程序计数器`、`虚拟机栈`、`本地方法栈`、`堆`、`方法区`、`运行时常量池`、`直接内存`、`OutOfMemoryError`、`StackOverflowError`\n- [Java 虚拟机之垃圾收集](source/_posts/01.Java/01.JavaCore/06.JVM/Java虚拟机之垃圾收集.md) - 关键词：`GC Roots`、`Serial`、`Parallel`、`CMS`、`G1`、`Minor GC`、`Full GC`\n- [Java 虚拟机之字节码](source/_posts/01.Java/01.JavaCore/06.JVM/Java虚拟机之字节码.md) - 关键词：`bytecode`、`asm`、`javassist`\n- [Java 虚拟机之类加载](source/_posts/01.Java/01.JavaCore/06.JVM/Java虚拟机之类加载.md) - 关键词：`ClassLoader`、`双亲委派`\n- [Java 虚拟机之工具](source/_posts/01.Java/01.JavaCore/06.JVM/Java虚拟机之工具.md) - 关键词：`jps`、`jstat`、`jmap` 、`jstack`、`jhat`、`jinfo`、`jconsole`、`jvisualvm`、`MAT`、`JProfile`、`Arthas`\n- [Java 虚拟机之故障处理](source/_posts/01.Java/01.JavaCore/06.JVM/Java虚拟机之故障处理.md) - 关键词：`CPU`、`内存`、`磁盘`、`网络`、`GC`\n- [Java 虚拟机之调优](source/_posts/01.Java/01.JavaCore/06.JVM/Java虚拟机之调优.md) - 关键词：`配置`、`调优`\n\n### JavaEE\n\n#### JavaWeb\n\n- [JavaWeb 面经](source/_posts/01.Java/02.JavaEE/01.JavaWeb/99.JavaWeb面经.md)\n- [JavaWeb 之 Servlet 指南](source/_posts/01.Java/02.JavaEE/01.JavaWeb/01.JavaWeb之Servlet指南.md)\n- [JavaWeb 之 Jsp 指南](source/_posts/01.Java/02.JavaEE/01.JavaWeb/02.JavaWeb之Jsp指南.md)\n- [JavaWeb 之 Filter 和 Listener](source/_posts/01.Java/02.JavaEE/01.JavaWeb/03.JavaWeb之Filter和Listener.md)\n- [JavaWeb 之 Cookie 和 Session](source/_posts/01.Java/02.JavaEE/01.JavaWeb/04.JavaWeb之Cookie和Session.md)\n\n#### Java 服务器\n\n\u003e Tomcat 和 Jetty 都是 Java 比较流行的轻量级服务器。\n\u003e\n\u003e Nginx 是目前最流行的反向代理服务器，也常用于负载均衡。\n\n- [Tomcat 快速入门](source/_posts/01.Java/02.JavaEE/02.服务器/01.Tomcat/01.Tomcat快速入门.md)\n- [Tomcat 连接器](source/_posts/01.Java/02.JavaEE/02.服务器/01.Tomcat/02.Tomcat连接器.md)\n- [Tomcat 容器](source/_posts/01.Java/02.JavaEE/02.服务器/01.Tomcat/03.Tomcat容器.md)\n- [Tomcat 优化](source/_posts/01.Java/02.JavaEE/02.服务器/01.Tomcat/04.Tomcat优化.md)\n- [Tomcat 和 Jetty](source/_posts/01.Java/02.JavaEE/02.服务器/01.Tomcat/05.Tomcat和Jetty.md)\n- [Jetty](source/_posts/01.Java/02.JavaEE/02.服务器/02.Jetty.md)\n\n### Java 软件\n\n#### Java 构建\n\n\u003e Java 项目需要通过 [**构建工具**](source/_posts/01.Java/11.软件/01.构建) 来管理项目依赖，完成编译、打包、发布、生成 JavaDoc 等任务。\n\u003e\n\u003e - 目前最主流的构建工具是 Maven，它的功能非常强大。\n\u003e - Gradle 号称是要替代 Maven 等构件工具，它的版本管理确实简洁，但是需要学习 Groovy，学习成本比 Maven 高。\n\u003e - Ant 功能比 Maven 和 Gradle 要弱，现代 Java 项目基本不用了，但也有一些传统的 Java 项目还在使用。\n\n- [Maven](source/_posts/01.Java/11.软件/01.构建/01.Maven) 📚\n  - [Maven 快速入门](source/_posts/01.Java/11.软件/01.构建/01.Maven/01.Maven快速入门.md)\n  - [Maven 教程之 pom.xml 详解](source/_posts/01.Java/11.软件/01.构建/01.Maven/02.Maven教程之pom.xml详解.md)\n  - [Maven 教程之 settings.xml 详解](source/_posts/01.Java/11.软件/01.构建/01.Maven/03.Maven教程之settings.xml详解.md)\n  - [Maven 实战问题和最佳实践](source/_posts/01.Java/11.软件/01.构建/01.Maven/04.Maven实战问题和最佳实践.md)\n  - [Maven 教程之发布 jar 到私服或中央仓库](source/_posts/01.Java/11.软件/01.构建/01.Maven/05.Maven教程之发布jar到私服或中央仓库.md)\n  - [Maven 插件之代码检查](source/_posts/01.Java/11.软件/01.构建/01.Maven/06.Maven插件之代码检查.md)\n- [Ant 简易教程](source/_posts/01.Java/11.软件/01.构建/02.Ant.md)\n\n#### Java IDE\n\n\u003e 自从有了 [**IDE**](source/_posts/01.Java/11.软件/02.IDE)，写代码从此就告别了刀耕火种的蛮荒时代。\n\u003e\n\u003e - [Eclipse](source/_posts/01.Java/11.软件/02.IDE/02.Eclipse.md) 是久负盛名的开源 Java IDE，我的学生时代一直使用它写 Java。\n\u003e - 曾经抗拒从转 [Intellij Idea](source/_posts/01.Java/11.软件/02.IDE/01.Intellij.md) ，但后来发现真香，不得不说，确实是目前最优秀的 Java IDE。\n\u003e - 你可以在 [vscode](source/_posts/01.Java/11.软件/02.IDE/03.VsCode.md) 中写各种语言，只要安装相应插件即可。如果你的项目中使用了很多种编程语言，又懒得在多个 IDE 之间切换，那么就用 vscode 来一网打尽吧。\n\n- [Intellij Idea](source/_posts/01.Java/11.软件/02.IDE/01.Intellij.md)\n- [Eclipse](source/_posts/01.Java/11.软件/02.IDE/02.Eclipse.md)\n- [vscode](source/_posts/01.Java/11.软件/02.IDE/03.VsCode.md)\n\n#### Java 监控诊断\n\n\u003e [监控/诊断](source/_posts/01.Java/11.软件/03.监控诊断) 工具主要用于 Java 应用的运维。通过采集、分析、存储、可视化应用的有效数据，帮助开发者、使用者快速定位问题，找到性能瓶颈。\n\n- [监控工具对比](source/_posts/01.Java/11.软件/03.监控诊断/01.监控工具对比.md)\n- [CAT](source/_posts/01.Java/11.软件/03.监控诊断/02.CAT.md)\n- [Zipkin](source/_posts/01.Java/11.软件/03.监控诊断/03.Zipkin.md)\n- [SkyWalking](source/_posts/01.Java/11.软件/03.监控诊断/04.Skywalking.md)\n- [Arthas](source/_posts/01.Java/11.软件/03.监控诊断/05.Arthas.md)\n\n### Java 工具\n\n#### Java IO\n\n- [JSON 序列化](source/_posts/01.Java/12.工具/01.IO/01.JSON序列化.md) - [fastjson](https://github.com/alibaba/fastjson)、[Jackson](https://github.com/FasterXML/jackson)、[Gson](https://github.com/google/gson)\n- [二进制序列化](source/_posts/01.Java/12.工具/01.IO/02.二进制序列化.md) - [Protobuf](https://developers.google.com/protocol-buffers)、[Thrift](https://thrift.apache.org/)、[Hessian](http://hessian.caucho.com/)、[Kryo](https://github.com/EsotericSoftware/kryo)、[FST](https://github.com/RuedigerMoeller/fast-serialization)\n\n#### JavaBean 工具\n\n- [Lombok](source/_posts/01.Java/12.工具/02.JavaBean/01.Lombok.md)\n- [Dozer](source/_posts/01.Java/12.工具/02.JavaBean/02.Dozer.md)\n\n#### Java 模板引擎\n\n- [Freemark](source/_posts/01.Java/12.工具/03.模板引擎/01.Freemark.md)\n- [Velocity](source/_posts/01.Java/12.工具/03.模板引擎/02.Thymeleaf.md)\n- [Thymeleaf](source/_posts/01.Java/12.工具/03.模板引擎/03.Velocity.md)\n\n#### Java 测试工具\n\n- [Junit](source/_posts/01.Java/12.工具/04.测试/01.Junit.md)\n- [Mockito](source/_posts/01.Java/12.工具/04.测试/02.Mockito.md)\n- [Jmeter](source/_posts/01.Java/12.工具/04.测试/03.Jmeter.md)\n- [JMH](source/_posts/01.Java/12.工具/04.测试/04.JMH.md)\n\n#### 其他\n\n- [Java 日志](source/_posts/01.Java/12.工具/99.其他/01.Java日志.md)\n- [Java 工具包](source/_posts/01.Java/12.工具/99.其他/02.Java工具包.md)\n- [Reflections](source/_posts/01.Java/12.工具/99.其他/03.Reflections.md)\n- [JavaMail](source/_posts/01.Java/12.工具/99.其他/04.JavaMail.md)\n- [Jsoup](source/_posts/01.Java/12.工具/99.其他/05.Jsoup.md)\n- [Thumbnailator](source/_posts/01.Java/12.工具/99.其他/06.Thumbnailator.md)\n- [Zxing](source/_posts/01.Java/12.工具/99.其他/07.Zxing.md)\n\n### Java 框架\n\n#### Spring\n\n##### 综合\n\n- [Spring 概述](source/_posts/01.Java/13.框架/01.Spring/00.Spring综合/01.Spring概述.md)\n- [SpringBoot 知识图谱](source/_posts/01.Java/13.框架/01.Spring/00.Spring综合/21.SpringBoot知识图谱.md)\n- [SpringBoot 基本原理](source/_posts/01.Java/13.框架/01.Spring/00.Spring综合/22.SpringBoot基本原理.md)\n- [Spring 面试](source/_posts/01.Java/13.框架/01.Spring/00.Spring综合/99.Spring面试.md)\n\n##### 核心\n\n- [Spring Bean](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/01.SpringBean.md)\n- [Spring IoC](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/02.SpringIoC.md)\n- [Spring 依赖查找](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/03.Spring依赖查找.md)\n- [Spring 依赖注入](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/04.Spring依赖注入.md)\n- [Spring IoC 依赖来源](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/05.SpringIoC依赖来源.md)\n- [Spring Bean 作用域](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/06.SpringBean作用域.md)\n- [Spring Bean 生命周期](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/07.SpringBean生命周期.md)\n- [Spring 配置元数据](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/08.Spring配置元数据.md)\n- [Spring AOP](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/10.SpringAop.md)\n- [Spring 资源管理](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/20.Spring资源管理.md)\n- [Spring 校验](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/21.Spring校验.md)\n- [Spring 数据绑定](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/22.Spring数据绑定.md)\n- [Spring 类型转换](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/23.Spring类型转换.md)\n- [Spring EL 表达式](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/24.SpringEL.md)\n- [Spring 事件](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/25.Spring事件.md)\n- [Spring 国际化](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/26.Spring国际化.md)\n- [Spring 泛型处理](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/27.Spring泛型处理.md)\n- [Spring 注解](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/28.Spring注解.md)\n- [Spring Environment 抽象](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/29.SpringEnvironment抽象.md)\n- [SpringBoot 教程之快速入门](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/31.SpringBoot之快速入门.md)\n- [SpringBoot 之属性加载](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/32.SpringBoot之属性加载.md)\n- [SpringBoot 之 Profile](source/_posts/01.Java/13.框架/01.Spring/01.Spring核心/33.SpringBoot之Profile.md)\n\n##### 数据\n\n- [Spring 之数据源](source/_posts/01.Java/13.框架/01.Spring/02.Spring数据/01.Spring之数据源.md)\n- [Spring 之 JDBC](source/_posts/01.Java/13.框架/01.Spring/02.Spring数据/02.Spring之JDBC.md)\n- [Spring 之事务](source/_posts/01.Java/13.框架/01.Spring/02.Spring数据/03.Spring之事务.md)\n- [Spring 之 JPA](source/_posts/01.Java/13.框架/01.Spring/02.Spring数据/04.Spring之JPA.md)\n- [Spring 集成 Mybatis](source/_posts/01.Java/13.框架/01.Spring/02.Spring数据/10.Spring集成Mybatis.md)\n- [Spring 访问 Redis](source/_posts/01.Java/13.框架/01.Spring/02.Spring数据/21.Spring访问Redis.md)\n- [Spring 访问 MongoDB](source/_posts/01.Java/13.框架/01.Spring/02.Spring数据/22.Spring访问MongoDB.md)\n- [Spring 访问 Elasticsearch](source/_posts/01.Java/13.框架/01.Spring/02.Spring数据/23.Spring访问Elasticsearch.md)\n\n##### Web\n\n- [SpringWeb 综述](source/_posts/01.Java/13.框架/01.Spring/03.SpringWeb/01.SpringWeb综述.md)\n- [SpringWeb 应用](source/_posts/01.Java/13.框架/01.Spring/03.SpringWeb/02.SpringWeb应用.md)\n- [DispatcherServlet](source/_posts/01.Java/13.框架/01.Spring/03.SpringWeb/03.DispatcherServlet.md)\n- [Spring 过滤器](source/_posts/01.Java/13.框架/01.Spring/03.SpringWeb/04.Spring过滤器.md)\n- [Spring 跨域](source/_posts/01.Java/13.框架/01.Spring/03.SpringWeb/05.Spring跨域.md)\n- [Spring 视图](source/_posts/01.Java/13.框架/01.Spring/03.SpringWeb/06.Spring视图.md)\n- [SpringBoot 之应用 EasyUI](source/_posts/01.Java/13.框架/01.Spring/03.SpringWeb/21.SpringBoot之应用EasyUI.md)\n\n##### IO\n\n- [SpringBoot 之异步请求](source/_posts/01.Java/13.框架/01.Spring/04.SpringIO/01.SpringBoot之异步请求.md)\n- [SpringBoot 之 Json](source/_posts/01.Java/13.框架/01.Spring/04.SpringIO/02.SpringBoot之Json.md)\n- [SpringBoot 之邮件](source/_posts/01.Java/13.框架/01.Spring/04.SpringIO/03.SpringBoot之邮件.md)\n\n##### 集成\n\n- [Spring 集成缓存中间件](source/_posts/01.Java/13.框架/01.Spring/05.Spring集成/01.Spring集成缓存.md)\n- [Spring 集成定时任务中间件](source/_posts/01.Java/13.框架/01.Spring/05.Spring集成/02.Spring集成调度器.md)\n- [Spring 集成 Dubbo](source/_posts/01.Java/13.框架/01.Spring/05.Spring集成/03.Spring集成Dubbo.md)\n\n##### 其他\n\n- [Spring4 升级](source/_posts/01.Java/13.框架/01.Spring/99.Spring其他/01.Spring4升级.md)\n- [SpringBoot 之 banner](source/_posts/01.Java/13.框架/01.Spring/99.Spring其他/21.SpringBoot之banner.md)\n- [SpringBoot 之 Actuator](source/_posts/01.Java/13.框架/01.Spring/99.Spring其他/22.SpringBoot之Actuator.md)\n\n#### ORM\n\n- [Mybatis 快速入门](source/_posts/01.Java/13.框架/11.ORM/01.Mybatis快速入门.md)\n- [Mybatis 原理](source/_posts/01.Java/13.框架/11.ORM/02.Mybatis原理.md)\n\n#### 安全\n\n\u003e Java 领域比较流行的安全框架就是 shiro 和 spring-security。\n\u003e\n\u003e shiro 更为简单、轻便，容易理解，能满足大多数基本安全场景下的需要。\n\u003e\n\u003e spring-security 功能更丰富，也比 shiro 更复杂。值得一提的是由于 spring-security 是 spring 团队开发，所以集成 spring 和 spring-boot 框架更容易。\n\n- [Shiro](source/_posts/01.Java/13.框架/12.安全/01.Shiro.md)\n- [SpringSecurity](source/_posts/01.Java/13.框架/12.安全/02.SpringSecurity.md)\n\n#### IO\n\n- [Shiro](source/_posts/01.Java/13.框架/13.IO/01.Netty.md)\n\n### Java 中间件\n\n#### 缓存\n\n\u003e 缓存可以说是优化系统性能的第一手段，在各种技术中都会有缓存的应用。\n\u003e\n\u003e 如果想深入学习缓存，建议先了解一下 [缓存基本原理](https://dunwu.github.io/design/distributed/分布式缓存.html)，有助于理解缓存的特性、原理，使用缓存常见的问题及解决方案。\n\n- [Java 缓存中间件](source/_posts/01.Java/14.中间件/02.缓存/02.Java缓存中间件.md)\n- [Ehcache 快速入门](source/_posts/01.Java/14.中间件/02.缓存/04.Ehcache.md)\n- [Java 进程内缓存](source/_posts/01.Java/14.中间件/02.缓存/05.Java进程内缓存.md)\n- [Http 缓存](source/_posts/01.Java/14.中间件/02.缓存/06.Http缓存.md)\n\n#### 流量控制\n\n- [Hystrix](source/_posts/01.Java/14.中间件/03.流量控制/01.Hystrix.md)\n\n## 数据结构和算法\n\n- [数据结构和算法指南](source/_posts/11.数据结构和算法/数据结构和算法指南.md)\n- [复杂度分析](source/_posts/11.数据结构和算法/复杂度分析.md) - 关键词：**`时间复杂度`**、**`空间复杂度`**、**`大 O 表示法`**、**`复杂度量级`**\n- [数组和链表](source/_posts/11.数据结构和算法/数组和链表.md) - 关键词：**`线性表`**、**`一维数组`**、**`多维数组`**、**`随机访问`**、**`单链表`**、**`双链表`**、**`循环链表`**\n- [栈和队列](source/_posts/11.数据结构和算法/栈和队列.md) - 关键词：**`先进后出`**、**`后进先出`**、**`循环队列`**\n- [线性表的查找](source/_posts/11.数据结构和算法/线性表的查找.md)\n- [线性表的排序](source/_posts/11.数据结构和算法/线性表的排序.md)\n- [树和二叉树](source/_posts/11.数据结构和算法/树和二叉树.md)\n- [堆](source/_posts/11.数据结构和算法/堆.md)\n- [B+树](source/_posts/11.数据结构和算法/B+树.md)\n- [LSM 树](source/_posts/11.数据结构和算法/LSM树.md)\n- [字典树](source/_posts/11.数据结构和算法/字典树.md)\n- [红黑树](source/_posts/11.数据结构和算法/红黑树.md)\n- [哈希表](source/_posts/11.数据结构和算法/哈希表.md) - 关键词：**`哈希函数`**、**`装载因子`**、**`哈希冲突`**、**`开放寻址法`**、**`拉链法`**\n- [跳表](source/_posts/11.数据结构和算法/跳表.md) - 关键词：**`多级索引`**\n- [图](source/_posts/11.数据结构和算法/图.md)\n\n## 数据库\n\n### 数据库综合\n\n- [Nosql 技术选型](source/_posts/12.数据库/01.数据库综合/Nosql技术选型.md)\n- [数据结构与数据库索引](source/_posts/12.数据库/01.数据库综合/数据结构与数据库索引.md)\n\n### 数据库中间件\n\n- [ShardingSphere](source/_posts/12.数据库/02.数据库中间件/ShardingSphere.md)\n- [Flyway](source/_posts/12.数据库/02.数据库中间件/Flyway.md)\n\n### 关系型数据库\n\n\u003e [关系型数据库](source/_posts/12.数据库/03.关系型数据库) 整理主流关系型数据库知识点。\n\n- [关系数据库简介](source/_posts/12.数据库/03.关系型数据库/关系数据库简介.md)\n- [SQL](source/_posts/12.数据库/03.关系型数据库/SQL.md)\n- [PostgreSQL](source/_posts/12.数据库/03.关系型数据库/PostgreSQL.md)\n- [H2](source/_posts/12.数据库/03.关系型数据库/H2.md)\n- [SqLite](source/_posts/12.数据库/03.关系型数据库/SqLite.md)\n\n#### [MySQL](source/_posts/12.数据库/03.关系型数据库/mysql)\n\n- [MySQL 架构](source/_posts/12.数据库/03.关系型数据库/mysql/MySQL_架构.md)\n- [MySQL 存储引擎](source/_posts/12.数据库/03.关系型数据库/mysql/MySQL_存储引擎.md)\n- [MySQL 索引](source/_posts/12.数据库/03.关系型数据库/mysql/MySQL_索引.md)\n- [MySQL 事务](source/_posts/12.数据库/03.关系型数据库/mysql/MySQL_事务.md)\n- [MySQL 锁](source/_posts/12.数据库/03.关系型数据库/mysql/MySQL_锁.md)\n- [MySQL 复制](source/_posts/12.数据库/03.关系型数据库/mysql/MySQL_复制.md)\n- [MySQL 优化](source/_posts/12.数据库/03.关系型数据库/mysql/MySQL_优化.md)\n- [MySQL 运维](source/_posts/12.数据库/03.关系型数据库/mysql/MySQL_运维.md)\n- [MySQL 面试](source/_posts/12.数据库/03.关系型数据库/mysql/MySQL_面试.md) 💯\n- [MySQL 面试之索引篇](source/_posts/12.数据库/03.关系型数据库/mysql/MySQL_面试_索引.md) 💯\n- [MySQL 面试之事务和锁篇](source/_posts/12.数据库/03.关系型数据库/mysql/MySQL_面试_事务和锁.md) 💯\n\n### 文档数据库\n\n#### MongoDB\n\n\u003e MongoDB 是一个基于文档的分布式数据库，由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。\n\u003e\n\u003e MongoDB 是一个介于关系型数据库和非关系型数据库之间的产品。它是非关系数据库当中功能最丰富，最像关系数据库的。它支持的数据结构非常松散，是类似 json 的 bson 格式，因此可以存储比较复杂的数据类型。\n\u003e\n\u003e MongoDB 最大的特点是它支持的查询语言非常强大，其语法有点类似于面向对象的查询语言，几乎可以实现类似关系数据库单表查询的绝大部分功能，而且还支持对数据建立索引。\n\n- [MongoDB 简介](source/_posts/12.数据库/04.文档数据库/mongodb/MongoDB_简介.md)\n- [MongoDB CRUD](source/_posts/12.数据库/04.文档数据库/mongodb/MongoDB_CRUD.md)\n- [MongoDB 聚合](source/_posts/12.数据库/04.文档数据库/mongodb/MongoDB_聚合.md)\n- [MongoDB 索引](source/_posts/12.数据库/04.文档数据库/mongodb/MongoDB_索引.md)\n- [MongoDB 事务](source/_posts/12.数据库/04.文档数据库/mongodb/MongoDB_事务.md)\n- [MongoDB 建模](source/_posts/12.数据库/04.文档数据库/mongodb/MongoDB_建模.md)\n- [MongoDB 复制](source/_posts/12.数据库/04.文档数据库/mongodb/MongoDB_复制.md)\n- [MongoDB 分片](source/_posts/12.数据库/04.文档数据库/mongodb/MongoDB_分片.md)\n- [MongoDB 运维](source/_posts/12.数据库/04.文档数据库/mongodb/MongoDB_运维.md)\n- [MongoDB 面试](source/_posts/12.数据库/04.文档数据库/mongodb/MongoDB_面试.md) 💯\n\n### KV 数据库\n\n#### [Redis](source/_posts/12.数据库/05.KV数据库/redis)\n\n- [Redis 基本数据类型](source/_posts/12.数据库/05.KV数据库/redis/Redis_数据类型.md) - 关键词：`String`、`Hash`、`List`、`Set`、`Zset`\n- [Redis 高级数据类型](source/_posts/12.数据库/05.KV数据库/redis/Redis_数据类型二.md) - 关键词：`BitMap`、`HyperLogLog`、`Geo`、`Stream`\n- [Redis 数据结构](source/_posts/12.数据库/05.KV数据库/redis/Redis_数据结构.md) - 关键词：`对象`、`SDS`、`链表`、`字典`、`跳表`、`整数集合`、`压缩列表`\n- [Redis 内存管理](source/_posts/12.数据库/05.KV数据库/redis/Redis_内存管理.md) - 关键词：`定时删除`、`惰性删除`、`定期删除`、`LRU`、`LFU`\n- [Redis 持久化](source/_posts/12.数据库/05.KV数据库/redis/Redis_持久化.md) - 关键词：`RDB`、`AOF`、`SAVE`、`BGSAVE`、`appendfsync`\n- [Redis 事件](source/_posts/12.数据库/05.KV数据库/redis/Redis_事件.md) - 关键词：`文件事件`、`时间事件`\n- [Redis 复制](source/_posts/12.数据库/05.KV数据库/redis/Redis_复制.md) - 关键词：`SLAVEOF`、`SYNC`、`PSYNC`、`命令传播`、`心跳`\n- [Redis 哨兵](source/_posts/12.数据库/05.KV数据库/redis/Redis_哨兵.md) - 关键词：`高可用`、`监控`、`选主`、`故障转移`、`Raft`\n- [Redis 集群](source/_posts/12.数据库/05.KV数据库/redis/Redis_集群.md) - 关键词：`高可用`、`监控`、`选主`、`故障转移`、`分区`、`Raft`、`Gossip`\n- [Redis 订阅](source/_posts/12.数据库/05.KV数据库/redis/Redis_订阅.md) - 关键词：`订阅`、`SUBSCRIBE`、`PSUBSCRIBE`、`PUBLISH`、`观察者模式`\n- [Redis 独立功能](source/_posts/12.数据库/05.KV数据库/redis/Redis_事务.md) - 关键词：`事务`、`ACID`、`MULTI`、`EXEC`、`DISCARD`、`WATCH`\n- [Redis 管道](source/_posts/12.数据库/05.KV数据库/redis/Redis_管道.md) - 关键词：`Pipeline`\n- [Redis 脚本](source/_posts/12.数据库/05.KV数据库/redis/Redis_脚本.md) - 关键词：`Lua`\n- [Redis 运维](source/_posts/12.数据库/05.KV数据库/redis/Redis_运维.md) - 关键词：`安装`、`配置`、`命令`、`集群`、`客户端`\n- [Redis 实战](source/_posts/12.数据库/05.KV数据库/redis/Redis_实战.md) - 关键词：`缓存`、`分布式锁`、`布隆过滤器`\n- [Redis 面试](source/_posts/12.数据库/05.KV数据库/redis/Redis_面试.md) - 关键词：`面试`\n- [Redis 面试之数据类型篇](source/_posts/12.数据库/05.KV数据库/redis/Redis_面试_数据类型.md) - 关键词：`面试`\n- [Redis 面试之应用篇](source/_posts/12.数据库/05.KV数据库/redis/Redis_面试_应用.md) - 关键词：`面试`\n\n#### [Memcached](source/_posts/12.数据库/05.KV数据库/Memcached.md)\n\n### 列式数据库\n\n#### HBase\n\n- [HBase 快速入门](source/_posts/12.数据库/06.列式数据库/hbase/HBase_快速入门.md)\n- [HBase 数据模型](source/_posts/12.数据库/06.列式数据库/hbase/HBase_数据模型.md)\n- [HBase Schema 设计](source/_posts/12.数据库/06.列式数据库/hbase/HBase_Schema.md)\n- [HBase 架构](source/_posts/12.数据库/06.列式数据库/hbase/HBase_架构.md)\n- [HBase Java API 基础特性](source/_posts/12.数据库/06.列式数据库/hbase/HBase_API_基础特性.md)\n- [HBase Java API 高级特性](source/_posts/12.数据库/06.列式数据库/hbase/HBase_API_高级特性.md)\n- [HBase Java API 高级特性之过滤器](source/_posts/12.数据库/06.列式数据库/hbase/HBase_API_高级特性_过滤器.md)\n- [HBase Java API 高级特性之协处理器](source/_posts/12.数据库/06.列式数据库/hbase/HBase_API_高级特性_协处理器.md)\n- [HBase 运维](source/_posts/12.数据库/06.列式数据库/hbase/HBase_运维.md)\n- [HBase 命令](source/_posts/12.数据库/06.列式数据库/hbase/HBase_命令.md)\n- [HBase 面试](source/_posts/12.数据库/06.列式数据库/hbase/HBase_面试.md) 💯\n\n### 搜索引擎数据库\n\n#### Elasticsearch\n\n\u003e Elasticsearch 是一个基于 Lucene 的搜索和数据分析工具，它提供了一个分布式服务。Elasticsearch 是遵从 Apache 开源条款的一款开源产品，是当前主流的企业级搜索引擎。\n\n- [Elasticsearch 简介](source/_posts/12.数据库/07.搜索引擎数据库/elasticsearch/Elasticsearch_简介.md)\n- [Elasticsearch 存储](source/_posts/12.数据库/07.搜索引擎数据库/elasticsearch/Elasticsearch_存储.md)\n- [Elasticsearch 搜索（上）](source/_posts/12.数据库/07.搜索引擎数据库/elasticsearch/Elasticsearch_搜索上.md)\n- [Elasticsearch 搜索（下）](source/_posts/12.数据库/07.搜索引擎数据库/elasticsearch/Elasticsearch_搜索下.md)\n- [Elasticsearch 聚合](source/_posts/12.数据库/07.搜索引擎数据库/elasticsearch/Elasticsearch_聚合.md)\n- [Elasticsearch 分析](source/_posts/12.数据库/07.搜索引擎数据库/elasticsearch/Elasticsearch_分析.md)\n- [Elasticsearch 集群](source/_posts/12.数据库/07.搜索引擎数据库/elasticsearch/Elasticsearch_集群.md)\n- [Elasticsearch 优化](source/_posts/12.数据库/07.搜索引擎数据库/elasticsearch/Elasticsearch_优化.md)\n- [Elasticsearch 运维](source/_posts/12.数据库/07.搜索引擎数据库/elasticsearch/Elasticsearch_运维.md)\n- [Elasticsearch API](source/_posts/12.数据库/07.搜索引擎数据库/elasticsearch/Elasticsearch_API.md)\n- [ElasticSearch API 之 High Level REST Client](source/_posts/12.数据库/07.搜索引擎数据库/elasticsearch/Elasticsearch_API_HighLevelRest.md)\n- [Elasticsearch 面试](source/_posts/12.数据库/07.搜索引擎数据库/elasticsearch/Elasticsearch_面试.md) 💯\n\n#### Elastic\n\n- [Elastic](source/_posts/12.数据库/07.搜索引擎数据库/elastic/Elastic.md)\n- [Kibana](source/_posts/12.数据库/07.搜索引擎数据库/elastic/Kibana.md)\n- [Logstash](source/_posts/12.数据库/07.搜索引擎数据库/elastic/Logstash.md)\n- [Filebeat](source/_posts/12.数据库/07.搜索引擎数据库/elastic/Filebeat.md)\n\n## 网络\n\n\u003e 如果你是做通信领域的开发，或者是 Web 应用的开发，那就或多或少需要了解一些计算机网络的知识 。\n\n### 网络综合\n\n\u003e 理解计算机网络，首先需要从宏观层面了解计算机网络通信的分层结构。最有代表性的是 OSI 七层结构模型，但现实中更流行的是五层结构模型。\n\u003e\n\u003e 了解网络分层结构，需要了解每个网络层级在网络通信中的定位，以及这个层级主要的通信设备、通信协议。\n\n- [计算机网络面试总结](source/_posts/13.网络/01.网络综合/01.计算机网络面试.md)\n- [计算机网络指南](source/_posts/13.网络/01.网络综合/02.计算机网络指南.md) - 关键词：核心概念、拓扑结构、作用范围、性能指标、体系结构\n- **网络分层**\n  - [计算机网络之物理层](source/_posts/13.网络/01.网络综合/11.物理层.md) - 关键词：调制、解调、数字信号、模拟信号、通信媒介、信道复用\n  - [计算机网络之数据链路层](source/_posts/13.网络/01.网络综合/12.数据链路层.md) - 关键词：点对点信道、广播信道、`PPP`、`CSMA/CD`、局域网、以太网、`MAC`、适配器、集线器、网桥、交换机\n  - [计算机网络之网络层](source/_posts/13.网络/01.网络综合/13.网络层.md) - 关键词：`IP`、`ICMP`、`ARP`、路由\n  - [计算机网络之传输层](source/_posts/13.网络/01.网络综合/14.传输层.md) - 关键词：`UDP`、`TCP`、滑动窗口、拥塞控制、三次握手\n  - [计算机网络之应用层](source/_posts/13.网络/01.网络综合/15.应用层.md) - 关键词：`HTTP`、`DNS`、`FTP`、`TELNET`、`DHCP`\n\n### 网络协议\n\n- [超文本传输协议 HTTP](source/_posts/13.网络/02.网络协议/01.HTTP.md)\n- [域名系统协议 DNS](source/_posts/13.网络/02.网络协议/02.DNS)\n- [传输控制协议 TCP](source/_posts/13.网络/02.网络协议/03.TCP.md)\n- [用户数据报协议 UDP](source/_posts/13.网络/02.网络协议/04.UDP.md)\n- [ICMP](source/_posts/13.网络/02.网络协议/05.ICMP.md)\n\n### 网络技术\n\n- [WebSocket](source/_posts/13.网络/03.网络技术/01.WebSocket.md)\n- [CDN](source/_posts/13.网络/03.网络技术/02.CDN.md)\n- [VPN](source/_posts/13.网络/03.网络技术/03.VPN.md)\n\n## 分布式\n\n### [分布式综合](source/_posts/15.分布式/00.分布式综合)\n\n- [逻辑时钟](source/_posts/15.分布式/00.分布式综合/逻辑时钟.md) - 关键词：`逻辑时钟`、`向量时钟`、`版本时钟`、`全序`、`偏序`\n- [CAP 和 BASE](source/_posts/15.分布式/00.分布式综合/CAP\u0026BASE.md) - 关键词：`ACID`、`CAP`、`BASE`、`一致性`\n- [拜占庭将军问题](source/_posts/15.分布式/00.分布式综合/拜占庭将军问题.md) - 关键词：`共识`\n- [分布式算法 Paxos](source/_posts/15.分布式/00.分布式综合/Paxos.md) - 关键词：`共识`、`Paxos`\n- [分布式算法 Raft](source/_posts/15.分布式/00.分布式综合/Raft.md) - 关键词：`共识`、`Raft`\n- [分布式算法 Gossip](source/_posts/15.分布式/00.分布式综合/Gossip.md) - 关键词：`Gossip`\n- [ZAB 协议](source/_posts/15.分布式/00.分布式综合/Zab.md) - 关键词：`共识`、`ZAB`、`ZooKeeper`\n- [分布式综合面试](source/_posts/15.分布式/00.分布式综合/分布式综合面试.md)\n\n### [分布式协同](source/_posts/15.分布式/11.分布式协同)\n\n- **分布式协同综合**\n  - [分布式复制](source/_posts/15.分布式/11.分布式协同/01.分布式协同综合/分布式复制.md) - 关键词：`主从`、`多主`、`无主`\n  - [分布式分区](source/_posts/15.分布式/11.分布式协同/01.分布式协同综合/分布式分区.md) - 关键词：`分区再均衡`、`路由`\n  - [分布式共识](source/_posts/15.分布式/11.分布式协同/01.分布式协同综合/分布式共识.md) - 关键词：`共识`、`广播`、`epoch`、`quorum`\n  - [分布式事务](source/_posts/15.分布式/11.分布式协同/01.分布式协同综合/分布式事务.md) - 关键词：`2PC`、`3PC`、`TCC`、`本地消息表`、`消息事务`、`SAGA`\n  - [分布式锁](source/_posts/15.分布式/11.分布式协同/01.分布式协同综合/分布式锁.md) - 关键词：`互斥`、`可重入`、`死锁`、`容错`、`自旋尝试`、`公平性`\n  - [分布式 ID](source/_posts/15.分布式/11.分布式协同/01.分布式协同综合/分布式ID.md) - 关键词：`UUID`、`自增序列`、`雪花算法`、`Leaf`\n- **ZooKeeper**\n  - [ZooKeeper 原理](source/_posts/15.分布式/11.分布式协同/02.ZooKeeper/ZooKeeper原理.md)\n  - [ZooKeeper Java Api](source/_posts/15.分布式/11.分布式协同/02.ZooKeeper/ZooKeeperJavaApi.md)\n  - [ZooKeeper 命令](source/_posts/15.分布式/11.分布式协同/02.ZooKeeper/ZooKeeper命令.md)\n  - [ZooKeeper 运维](source/_posts/15.分布式/11.分布式协同/02.ZooKeeper/ZooKeeper运维.md)\n  - [ZooKeeper Acl](source/_posts/15.分布式/11.分布式协同/02.ZooKeeper/ZooKeeperAcl.md)\n\n### [分布式调度](source/_posts/15.分布式/12.分布式调度)\n\n- [服务注册和发现](source/_posts/15.分布式/12.分布式调度/服务注册和发现.md) - 关键词：`服务注册`、`服务发现`、`元数据`\n- [负载均衡](source/_posts/15.分布式/12.分布式调度/负载均衡.md) - 关键词：`轮询`、`随机`、`最少连接`、`源地址哈希`、`一致性哈希`、`虚拟 hash 槽`\n- [流量控制](source/_posts/15.分布式/12.分布式调度/流量控制.md) - 关键词：`限流`、`熔断`、`降级`、`计数器法`、`时间窗口法`、`令牌桶法`、`漏桶法`\n- [路由和网关](source/_posts/15.分布式/12.分布式调度/网关路由.md) - 关键词：`路由`、`条件路由`、`脚本路由`、`标签路由`\n\n### 分布式高可用\n\n- [服务容错](source/_posts/15.分布式/11.分布式协同/01.分布式协同综合/服务容错.md)\n\n### [分布式通信](source/_posts/15.分布式/21.分布式通信)\n\n#### [RPC](source/_posts/15.分布式/21.分布式通信/01.RPC)\n\n- [Dubbo 面试](source/_posts/15.分布式/21.分布式通信/01.RPC/Dubbo面试.md)\n- [RPC 面试](source/_posts/15.分布式/21.分布式通信/01.RPC/RPC面试.md)\n\n#### [MQ](source/_posts/15.分布式/21.分布式通信/02.MQ)\n\n##### [MQ 综合](source/_posts/15.分布式/21.分布式通信/02.MQ/00.MQ综合)\n\n- [MQ 面试](source/_posts/15.分布式/21.分布式通信/02.MQ/00.MQ综合/MQ面试.md)\n\n##### [Kafka](source/_posts/15.分布式/21.分布式通信/02.MQ/01.Kafka)\n\n- [Kafka 快速入门](source/_posts/15.分布式/21.分布式通信/02.MQ/01.Kafka/Kafka快速入门.md)\n- [Kafka 生产](source/_posts/15.分布式/21.分布式通信/02.MQ/01.Kafka/Kafka生产.md)\n- [Kafka 消费](source/_posts/15.分布式/21.分布式通信/02.MQ/01.Kafka/Kafka消费.md)\n- [Kafka 集群](source/_posts/15.分布式/21.分布式通信/02.MQ/01.Kafka/Kafka集群.md)\n- [Kafka 可靠传输](source/_posts/15.分布式/21.分布式通信/02.MQ/01.Kafka/Kafka可靠传输.md)\n- [Kafka 存储](source/_posts/15.分布式/21.分布式通信/02.MQ/01.Kafka/Kafka存储.md)\n- [Kafka 流式处理](source/_posts/15.分布式/21.分布式通信/02.MQ/01.Kafka/Kafka流式处理.md)\n- [Kafka 运维](source/_posts/15.分布式/21.分布式通信/02.MQ/01.Kafka/Kafka运维.md)\n\n##### [RocketMQ](source/_posts/15.分布式/21.分布式通信/02.MQ/02.RocketMQ)\n\n- [RocketMQ 快速入门](source/_posts/15.分布式/21.分布式通信/02.MQ/02.RocketMQ/RocketMQ快速入门.md)\n- [RocketMQ 基本原理](source/_posts/15.分布式/21.分布式通信/02.MQ/02.RocketMQ/RocketMQ基本原理.md)\n- [RocketMQ Faq](source/_posts/15.分布式/21.分布式通信/02.MQ/02.RocketMQ/RocketMQFaq.md)\n\n##### 其他 MQ\n\n- [ActiveMQ](source/_posts/15.分布式/21.分布式通信/02.MQ/99.其他MQ/ActiveMQ.md)\n\n### [分布式存储](source/_posts/15.分布式/22.分布式存储)\n\n- [分布式缓存](source/_posts/15.分布式/22.分布式存储/分布式缓存.md) - 关键词：`进程内缓存`、`分布式缓存`、`缓存雪崩`、`缓存穿透`、`缓存击穿`、`缓存更新`、`缓存预热`、`缓存降级`\n- [读写分离](source/_posts/15.分布式/22.分布式存储/读写分离.md)\n- [分库分表](source/_posts/15.分布式/22.分布式存储/分库分表.md) - 关键词：`分片`、`路由`、`迁移`、`扩容`、`双写`、`聚合`\n\n## 编程\n\n### 编程范式\n\n- [如何学习编程语言](source/_posts/02.编程/01.编程范式/01.如何学习编程语言.md)\n\n### 编程语言\n\n- [python](source/_posts/02.编程/02.编程语言/01.python.md)\n- [shell](source/_posts/02.编程/02.编程语言/02.shell.md)\n- [scala](source/_posts/02.编程/02.编程语言/03.scala.md)\n\n## 设计\n\n### 架构\n\n#### 综合\n\n- [如何设计系统](source/_posts/03.设计/01.架构/00.综合/00.如何设计系统.md)\n- [系统架构面试总结](source/_posts/03.设计/01.架构/00.综合/01.系统架构面试.md)\n- [系统架构概述](source/_posts/03.设计/01.架构/00.综合/02.系统架构概述.md)\n- [系统高性能架构](source/_posts/03.设计/01.架构/00.综合/03.系统高性能架构.md)\n- [系统高可用架构](source/_posts/03.设计/01.架构/00.综合/04.系统高可用架构.md)\n- [系统伸缩性架构](source/_posts/03.设计/01.架构/00.综合/05.系统伸缩性架构.md)\n- [系统扩展性架构](source/_posts/03.设计/01.架构/00.综合/06.系统扩展性架构.md)\n- [系统安全性架构](source/_posts/03.设计/01.架构/00.综合/07.系统安全性架构.md)\n- [大型系统核心技术](source/_posts/03.设计/01.架构/00.综合/08.大型系统核心技术.md)\n- [系统测试架构](source/_posts/03.设计/01.架构/00.综合/09.系统测试架构.md)\n\n#### 微服务\n\n- [微服务简介](source/_posts/03.设计/01.架构/01.微服务/01.微服务简介.md) - 关键词：`定义`、`演进`、`利弊`、`如何拆分`、`容量规划`、`核心组件`\n- [微服务之注册和发现](source/_posts/03.设计/01.架构/01.微服务/02.微服务之注册和发现.md) - 关键词：`服务定义`、`注册中心`、`元数据`、`健康检查`、`服务订阅`、`一致性`\n- [微服务之服务调用](source/_posts/03.设计/01.架构/01.微服务/03.微服务之服务调用.md) - 关键词：`RPC`、`通信协议`、`传输方式`、`序列化`\n- [微服务基本原理](source/_posts/03.设计/01.架构/01.微服务/10.微服务基本原理.md) - 关键词：`微服务`、`序列化`、`动态代理`、`通信`、`服务注册发现`、`健康检查`、`路由`、`负载均衡`、`容错处理`、`优雅上线下线`、`限流`、`熔断`、`业务分组`\n\n#### 安全\n\n- [权限认证综述](source/_posts/03.设计/01.架构/02.安全/01.综述.md)\n- [认证设计](source/_posts/03.设计/01.架构/02.安全/02.认证.md)\n- [授权设计](source/_posts/03.设计/01.架构/02.安全/03.授权.md)\n- [安全漏洞](source/_posts/03.设计/01.架构/02.安全/05.安全漏洞.md)\n- [编码和加密](source/_posts/03.设计/01.架构/02.安全/06.编码和加密.md)\n\n### 设计模式\n\n[面向对象原则](source/_posts/03.设计/02.设计模式/25.面向对象原则.md)\n\n#### 创建型模式\n\n\u003e 创建型模式提供了创建对象的机制， 能够提升已有代码的灵活性和可复用性。\n\n- [简单工厂模式 (Simple Factory)](source/_posts/03.设计/02.设计模式/01.简单工厂模式.md)\n- [工厂方法模式 (Factory Method)](source/_posts/03.设计/02.设计模式/02.工厂方法模式.md)\n- [抽象工厂模式 (Abstract Factory)](source/_posts/03.设计/02.设计模式/03.抽象工厂模式.md)\n- [建造者模式 (Builder)](source/_posts/03.设计/02.设计模式/04.建造者模式.md)\n- [原型模式 (Prototype)](source/_posts/03.设计/02.设计模式/05.原型模式.md)\n- [单例模式 (Singleton)](source/_posts/03.设计/02.设计模式/06.单例模式.md)\n\n#### 结构型模式\n\n\u003e 结构型模式介绍如何将对象和类组装成较大的结构， 并同时保持结构的灵活和高效。\n\n- [适配器模式 (Adapter)](source/_posts/03.设计/02.设计模式/07.适配器模式.md)\n- [桥接模式 (Bridge)](source/_posts/03.设计/02.设计模式/08.桥接模式.md)\n- [组合模式 (Composite)](source/_posts/03.设计/02.设计模式/09.组合模式.md)\n- [装饰模式 (Decorator)](source/_posts/03.设计/02.设计模式/10.装饰模式.md)\n- [外观模式 (Facade)](source/_posts/03.设计/02.设计模式/11.外观模式.md)\n- [享元模式 (Flyweight)](source/_posts/03.设计/02.设计模式/12.享元模式.md)\n- [代理模式 (Proxy)](source/_posts/03.设计/02.设计模式/13.代理模式.md)\n\n#### 行为型模式\n\n\u003e 行为模式负责对象间的高效沟通和职责委派。\n\n- [模板方法模式 (Template Method)](source/_posts/03.设计/02.设计模式/14.模板方法模式.md)\n- [命令模式 (Command)](source/_posts/03.设计/02.设计模式/15.命令模式.md)\n- [迭代器模式 (Iterator)](source/_posts/03.设计/02.设计模式/16.迭代器模式.md)\n- [观察者模式 (Observer)](source/_posts/03.设计/02.设计模式/17.观察者模式.md)\n- [解释器模式 (Interpreter)](source/_posts/03.设计/02.设计模式/18.解释器模式.md)\n- [中介者模式 (Mediator)](source/_posts/03.设计/02.设计模式/19.中介者模式.md)\n- [职责链模式 (Chain of Responsibility)](source/_posts/03.设计/02.设计模式/20.职责链模式.md)\n- [备忘录模式 (Memento)](source/_posts/03.设计/02.设计模式/21.备忘录模式.md)\n- [策略模式 (Strategy)](source/_posts/03.设计/02.设计模式/22.策略模式.md)\n- [访问者模式 (Visitor)](source/_posts/03.设计/02.设计模式/23.访问者模式.md)\n- [状态模式 (State)](source/_posts/03.设计/02.设计模式/24.状态模式.md)\n\n### 重构\n\n- [代码的坏味道和重构](source/_posts/03.设计/03.重构/01.代码的坏味道和重构.md)\n- [代码坏味道之代码臃肿](source/_posts/03.设计/03.重构/02.代码坏味道之代码臃肿.md)\n- [代码坏味道之滥用面向对象](source/_posts/03.设计/03.重构/03.代码坏味道之滥用面向对象.md)\n- [代码坏味道之变革的障碍](source/_posts/03.设计/03.重构/04.代码坏味道之变革的障碍.md)\n- [代码坏味道之非必要的](source/_posts/03.设计/03.重构/05.代码坏味道之非必要的.md)\n- [代码坏味道之耦合](source/_posts/03.设计/03.重构/06.代码坏味道之耦合.md)\n\n### UML\n\n- [UML 快速入门](source/_posts/03.设计/05.UML/01.UML快速入门.md)\n- [UML 结构建模图](source/_posts/03.设计/05.UML/02.UML结构建模图.md)\n- [UML 行为建模图](source/_posts/03.设计/05.UML/03.UML行为建模图.md)\n\n## DevOps\n\n### CI\n\n### CD\n\n### 监控\n\n- [监控体系](source/_posts/04.DevOps/03.监控/01.监控体系.md)\n- [链路监控](source/_posts/04.DevOps/03.监控/02.链路追踪.md)\n\n### 工具\n\n- Git\n  - [如何优雅的玩转 Git](source/_posts/04.DevOps/99.工具/01.Git/01.如何优雅的玩转Git.md)\n  - [Git 帮助手册](source/_posts/04.DevOps/99.工具/01.Git/02.Git帮助手册.md)\n- 其他\n  - [正则表达式极简教程](source/_posts/04.DevOps/99.工具/99.其他/01.正则表达式.md)\n\n## 工作\n\n### 方法论\n\n- [效率提升方法论](source/_posts/96.工作/01.效能/01.方法论/01.效率提升方法论.md)\n- [话术](source/_posts/96.工作/01.效能/01.方法论/03.话术.md)\n\n### 规范\n\n- [技术文档规范](source/_posts/96.工作/01.效能/02.规范/01.技术文档规范.md)\n- [目录管理规范](source/_posts/96.工作/01.效能/02.规范/02.目录管理规范.md)\n- [代码工程规范](source/_posts/96.工作/01.效能/02.规范/03.代码工程规范.md)\n\n### 工具\n\n- [Markdown 极简教程](source/_posts/96.工作/01.效能/99.工具/01.Markdown.md)\n\n## 🚪 传送\n\n◾ 💧 [钝悟的 IT 知识图谱](https://dunwu.github.io/waterdrop/) ◾ 🎯 [钝悟的博客](https://dunwu.github.io/blog/) ◾\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdunwu%2Fblog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdunwu%2Fblog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdunwu%2Fblog/lists"}