{"id":13458855,"url":"https://github.com/zq2599/blog_demos","last_synced_at":"2025-05-14T11:08:49.077Z","repository":{"id":37314998,"uuid":"87683712","full_name":"zq2599/blog_demos","owner":"zq2599","description":"CSDN博客专家程序员欣宸的github，这里有六百多篇原创文章的详细分类和汇总，以及对应的源码，内容涉及Java、Docker、Kubernetes、DevOPS等方面","archived":false,"fork":false,"pushed_at":"2024-05-18T11:41:51.000Z","size":247898,"stargazers_count":4644,"open_issues_count":153,"forks_count":1878,"subscribers_count":123,"default_branch":"master","last_synced_at":"2025-04-10T03:47:06.751Z","etag":null,"topics":["docker","docker-java","docker-jib","flink","java","jenkins","kubernetes","kubernetes-java","kubernetes-jenkins-maven","spring","spring-cloud","spring-cloud-kubernetes","springboot"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zq2599.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}},"created_at":"2017-04-09T04:51:56.000Z","updated_at":"2025-04-09T07:35:33.000Z","dependencies_parsed_at":"2024-05-18T12:46:08.191Z","dependency_job_id":null,"html_url":"https://github.com/zq2599/blog_demos","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/zq2599%2Fblog_demos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zq2599%2Fblog_demos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zq2599%2Fblog_demos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zq2599%2Fblog_demos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zq2599","download_url":"https://codeload.github.com/zq2599/blog_demos/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254129481,"owners_count":22019628,"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":["docker","docker-java","docker-jib","flink","java","jenkins","kubernetes","kubernetes-java","kubernetes-jenkins-maven","spring","spring-cloud","spring-cloud-kubernetes","springboot"],"created_at":"2024-07-31T09:00:58.607Z","updated_at":"2025-05-14T11:08:49.043Z","avatar_url":"https://github.com/zq2599.png","language":"Java","funding_links":[],"categories":["Java","语言资源库"],"sub_categories":["books"],"readme":"# 关于作者\n1. 微信公众号、头条号、CSDN账号都是\u003cfont color=\"blue\"\u003e程序员欣宸\u003c/font\u003e\n2. 前腾讯、前阿里员工，从事Java后台工作；\n3. 对Docker和Kubernetes充满热爱；\n4. 所有文章均为作者原创；\n\n# 关于这个代码仓库\n1. CSDN博客地址：http://blog.csdn.net/boling_cavalry\n2. 这个代码仓库里是博客中涉及的源码、文件等\n3. 如果对您有帮助，请给个Star，谢谢您！\n\n# 文章分类\n总的来说分为以下几大类，若有您感兴趣的内容，我将不胜荣幸：\n1. Java；\n2. 后台中间件；\n3. Docker；\n4. Kubernetes；\n5. 大数据；\n6. 综合兴趣，例如LeetCode、树莓派、群晖系统等；\n7. DevOps；\n8. 常用工具和技巧；\n9. 问题处理备忘；\n\n# Java领域\n\n## 云原生技术，Quarkus专辑\n\n## quarkus长篇连载\n### 综合实战\n1. [《quarkus实战之一：准备工作》](https://xinchen.blog.csdn.net/article/details/122985638)\n2. [《quarkus实战之二：应用的创建、构建、部署》](https://xinchen.blog.csdn.net/article/details/123036523)\n3. [《quarkus实战之三：开发模式(Development mode)》](https://xinchen.blog.csdn.net/article/details/123196706)\n4. [《quarkus实战之四：远程热部署》](https://xinchen.blog.csdn.net/article/details/123196853)\n5. [《quarkus实战之五：细说maven插件》](https://xinchen.blog.csdn.net/article/details/123268091)\n6. [《quarkus实战之六：配置》](https://xinchen.blog.csdn.net/article/details/123303111)\n7. [《quarkus实战之七：使用配置》](https://xinchen.blog.csdn.net/article/details/123307704)\n8. [《quarkus实战之八：profile》](https://xinchen.blog.csdn.net/article/details/123321509)\n\n\n### 虚拟线程\n1. [支持JDK19虚拟线程的web框架，之一：体验](https://blog.csdn.net/boling_cavalry/article/details/127354737)\n2. [支持JDK19虚拟线程的web框架，之二：完整开发一个支持虚拟线程的quarkus应用](https://blog.csdn.net/boling_cavalry/article/details/127457880)\n3. [支持JDK19虚拟线程的web框架，之三：观察运行中的虚拟线程](https://xinchen.blog.csdn.net/article/details/127472917)\n4. [支持JDK19虚拟线程的web框架，之四：看源码，了解quarkus如何支持虚拟线程](https://xinchen.blog.csdn.net/article/details/127592248)\n5. [支持JDK19虚拟线程的web框架，之五（终篇）：兴风作浪的ThreadLocal](https://blog.csdn.net/boling_cavalry/article/details/127592728)\n\n\n### 依赖注入\n1. [《quarkus依赖注入之一：创建bean》](https://xinchen.blog.csdn.net/article/details/123752182)\n2. [《quarkus依赖注入之二：bean的作用域》](https://xinchen.blog.csdn.net/article/details/123754648)\n3. [《quarkus依赖注入之三：用注解选择注入bean》](https://xinchen.blog.csdn.net/article/details/123861906)\n4. [《quarkus依赖注入之四：选择注入bean的高级手段》](https://xinchen.blog.csdn.net/article/details/123939148)\n5. [《quarkus依赖注入之五：拦截器(Interceptor)》](https://xinchen.blog.csdn.net/article/details/124055982)\n6. [《quarkus依赖注入之六：发布和消费事件》](https://xinchen.blog.csdn.net/article/details/124069627)\n7. [《quarkus依赖注入之七：生命周期回调》](https://xinchen.blog.csdn.net/article/details/124114602)\n8. [《quarkus依赖注入之八：装饰器（Decorator）》](https://xinchen.blog.csdn.net/article/details/124234802)\n9. [《quarkus依赖注入之九：bean读写锁》](https://xinchen.blog.csdn.net/article/details/124336520)\n10. [《quarkus依赖注入之十：学习和改变bean懒加载规则》](https://xinchen.blog.csdn.net/article/details/124524910)\n11. [《quarkus依赖注入之十一：拦截器高级特性上篇(属性设置和重复使用)》](https://xinchen.blog.csdn.net/article/details/124540964)\n12. [《quarkus依赖注入之十二：禁用类级别拦截器》](https://xinchen.blog.csdn.net/article/details/124581260)\n13. [《quarkus依赖注入之十三：其他重要知识点大串讲(终篇)》](https://xinchen.blog.csdn.net/article/details/124644543)\n\n\n### 数据库\n1. [《quarkus数据库篇之一：比官方demo更简单的基础操作》](https://xinchen.blog.csdn.net/article/details/124766017)\n2. [《quarkus数据库篇之二：无需数据库也能运行增删改查(dev模式)》](https://xinchen.blog.csdn.net/article/details/124860825)\n3. [《quarkus数据库篇之三：单应用同时操作多个数据库》](https://xinchen.blog.csdn.net/article/details/124895407)\n4. [《quarkus数据库篇之四：本地缓存》](https://xinchen.blog.csdn.net/article/details/124958726)\n\n## 基础知识\n1. [《CentOS7安装JDK8》](https://blog.csdn.net/boling_cavalry/article/details/79840049)\n2. [《Ubuntu下安装OpenJDK10》](https://blog.csdn.net/boling_cavalry/article/details/83213608)\n3. [《Ubuntu环境下载OpenJDK11源码》](https://blog.csdn.net/boling_cavalry/article/details/83240035)\n4. [《体验RxJava和lambda》](https://blog.csdn.net/boling_cavalry/article/details/72858158)\n5. [《实战限流（guava的RateLimiter）》](https://blog.csdn.net/boling_cavalry/article/details/75174486)\n6. [《java.util.Optional学习笔记》](https://blog.csdn.net/boling_cavalry/article/details/77610629)\n7. [《org.springframework.util.StopWatch：简洁的耗时统计小工具》](https://blog.csdn.net/boling_cavalry/article/details/78231032)\n8. [《体验IntelliJ IDEA的远程开发（Remote Development）》](https://xinchen.blog.csdn.net/article/details/123598992)\n9. [《20天等待，申请终于通过，安装和体验IntelliJ IDEA新UI预览版》](https://xinchen.blog.csdn.net/article/details/125401366)\n10. [《浏览器上写代码，4核8G微软服务器免费用，Codespaces真香》](https://xinchen.blog.csdn.net/article/details/125014702)\n11. [《Codespaces个性化后台服务器配置指南》](https://xinchen.blog.csdn.net/article/details/125110236)\n12. [《桌面版vscode用免费的微软4核8G服务器做远程开发（编译运行都在云上，还能自由创建docker服务）》](https://xinchen.blog.csdn.net/article/details/125126658)\n\n## 进阶实战\n1. [《Java实战操作MongoDB集群（副本集）》](https://blog.csdn.net/boling_cavalry/article/details/78238163)\n2. [《Docker下Java文件上传服务三部曲之一：准备环境》](https://blog.csdn.net/boling_cavalry/article/details/79361159)\n3. [《Docker下Java文件上传服务三部曲之二：服务端开发》](https://blog.csdn.net/boling_cavalry/article/details/79367520)\n4. [《Docker下Java文件上传服务三部曲之三：wireshark抓包分析》](https://blog.csdn.net/boling_cavalry/article/details/79380053)\n5. [《实战Redis序列化性能测试(Kryo和字符串)》](https://blog.csdn.net/boling_cavalry/article/details/80719683)\n6. [《JavaCPP快速入门(官方demo增强版)》](https://xinchen.blog.csdn.net/article/details/118636417)\n\n## 畅游JVM世界\n1. [《极简，利用Docker仅两行命令就能下载和编译OpenJDK11》](https://blog.csdn.net/boling_cavalry/article/details/83353102)\n2. [《利用Docker极速下载OpenJDK11源码》](https://blog.csdn.net/boling_cavalry/article/details/83245148)\n3. [《制作Docker镜像，用来下载OpenJDK11源码》](https://blog.csdn.net/boling_cavalry/article/details/83420005)\n4. [《制作Docker镜像，用来编译OpenJDK11源码》](https://blog.csdn.net/boling_cavalry/article/details/84890664)\n5. [《Ubuntu环境编辑OpenJDK11源码》](https://blog.csdn.net/boling_cavalry/article/details/83303317)\n6. [《openjdk镜像的tag说明》](https://blog.csdn.net/boling_cavalry/article/details/94320638)\n7. [《ARM64架构下，OpenJDK的官方Docker镜像为何没有8版本？》](https://blog.csdn.net/boling_cavalry/article/details/101908575)\n8. [《ARM架构下的Docker环境，OpenJDK官方没有8版本镜像，如何完美解决？》](https://blog.csdn.net/boling_cavalry/article/details/101855126)\n9. [《极速体验编译openjdk8（docker环境）》](https://blog.csdn.net/boling_cavalry/article/details/77623193)\n10. [《在docker上编译openjdk8》](https://blog.csdn.net/boling_cavalry/article/details/70243954)\n11. [《修改，编译，GDB调试openjdk8源码(docker环境下)》](https://blog.csdn.net/boling_cavalry/article/details/70557537)\n12. [《环境变量_JAVA_LAUNCHER_DEBUG，它能给你更多的jvm信息》](https://blog.csdn.net/boling_cavalry/article/details/70904278)\n13. [《Java虚拟机学习：方法调用的字节码指令》](https://blog.csdn.net/boling_cavalry/article/details/76384425)\n14. [《Java的wait()、notify()学习三部曲之一：JVM源码分析》](https://xinchen.blog.csdn.net/article/details/77793224)\n15. [《Java的wait()、notify()学习三部曲之二：修改JVM源码看参数》](https://blog.csdn.net/boling_cavalry/article/details/77897108)\n16. [《Java的wait()、notify()学习三部曲之三：修改JVM源码控制抢锁顺序》](https://blog.csdn.net/boling_cavalry/article/details/77995069)\n\n## 玩转Maven\n1. [《Ubuntu部署和体验Nexus3》](https://blog.csdn.net/boling_cavalry/article/details/104617262)\n2. [《没有JDK和Maven，用Docker也能构建Maven工程》](https://blog.csdn.net/boling_cavalry/article/details/80384722)\n3. [《maven构建docker镜像三部曲之一：准备环境》](https://blog.csdn.net/boling_cavalry/article/details/78869466)\n4. [《maven构建docker镜像三部曲之二：编码和构建镜像》](https://blog.csdn.net/boling_cavalry/article/details/78872020)\n5. [《maven构建docker镜像三部曲之三：推送到远程仓库(内网和阿里云)》](https://blog.csdn.net/boling_cavalry/article/details/78934391)\n6. [《实战maven私有仓库三部曲之一：搭建和使用》](https://blog.csdn.net/boling_cavalry/article/details/79059021)\n7. [《实战maven私有仓库三部曲之二：上传到私有仓库》](https://blog.csdn.net/boling_cavalry/article/details/79070744)\n8. [《实战maven私有仓库三部曲之三：Docker下搭建maven私有仓库》](https://blog.csdn.net/boling_cavalry/article/details/79111740)\n9. [《修改gradle脚本，加速spring4.1源码编译构建速度》](https://blog.csdn.net/boling_cavalry/article/details/80873343)\n10. [《Docker与Jib(maven插件版)实战》](https://blog.csdn.net/boling_cavalry/article/details/94355659)\n12. [《Jib使用小结(Maven插件版)》](https://blog.csdn.net/boling_cavalry/article/details/100179709)\n13. [《Jib构建镜像问题从定位到深入分析》](https://blog.csdn.net/boling_cavalry/article/details/101606958)\n14. [《kubernetes下的jenkins如何设置maven》](https://blog.csdn.net/boling_cavalry/article/details/104849839)\n15. [《kubernetes下jenkins实战maven项目编译构建》](https://blog.csdn.net/boling_cavalry/article/details/104875452)\n16. [《Nexus3常用功能备忘》](https://xinchen.blog.csdn.net/article/details/105458882)\n17. [《我把自己的java库发布到了maven中央仓库，从此可以像Jackson、Spring的jar一样使用它了》](https://xinchen.blog.csdn.net/article/details/121240721)\n\n## 玩转Gradle\n1. [Gradle构建多模块SpringBoot应用](https://xinchen.blog.csdn.net/article/details/115049633)\n2. [《Gradle项目的jar发布到私有仓库》](https://xinchen.blog.csdn.net/article/details/115609899)\n\n## Jackson学习特辑\n1. [《jackson学习之一：基本信息》](https://blog.csdn.net/boling_cavalry/article/details/107135958)\n2. [《jackson学习之二：jackson-core》](https://blog.csdn.net/boling_cavalry/article/details/108571629)\n3. [《jackson学习之三：常用API操作》](https://blog.csdn.net/boling_cavalry/article/details/108192174)\n4. [《jackson学习之四：WRAP_ROOT_VALUE（root对象）》](https://blog.csdn.net/boling_cavalry/article/details/108298858)\n5. [《jackson学习之五：JsonInclude注解》](https://blog.csdn.net/boling_cavalry/article/details/108412558)\n6. [《jackson学习之六：常用类注解》](https://blog.csdn.net/boling_cavalry/article/details/108333324)\n7. [《jackson学习之七：常用Field注解》](https://blog.csdn.net/boling_cavalry/article/details/108427844)\n8. [《jackson学习之八：常用方法注解》](https://blog.csdn.net/boling_cavalry/article/details/108433330)\n9. [《jackson学习之九：springboot整合(配置文件)》](https://blog.csdn.net/boling_cavalry/article/details/108460433)\n10. [《jackson学习之十(终篇)：springboot整合(配置类)》](https://blog.csdn.net/boling_cavalry/article/details/108559056)\n\n## JUnit5学习特辑\n《JUnit5学习》系列旨在通过实战提升SpringBoot环境下的单元测试技能，一共八篇文章，链接如下：\n1. [《JUnit5学习之一：基本操作》](https://blog.csdn.net/boling_cavalry/article/details/108810587)\n2. [《JUnit5学习之二：Assumptions类》](https://blog.csdn.net/boling_cavalry/article/details/108861185)\n3. [《JUnit5学习之三：Assertions类》](https://blog.csdn.net/boling_cavalry/article/details/108899437)\n4. [《JUnit5学习之四：按条件执行》](https://blog.csdn.net/boling_cavalry/article/details/108909107)\n5. [《JUnit5学习之五：标签(Tag)和自定义注解》](https://blog.csdn.net/boling_cavalry/article/details/108914091)\n6. [《JUnit5学习之六：参数化测试(Parameterized Tests)基础》](https://blog.csdn.net/boling_cavalry/article/details/108930987)\n7. [《JUnit5学习之七：参数化测试(Parameterized Tests)进阶》](https://blog.csdn.net/boling_cavalry/article/details/108942301)\n8. [《JUnit5学习之八：综合进阶（终篇）》](https://blog.csdn.net/boling_cavalry/article/details/108952500)\n\n## jetcd学习特辑\n1. [jetcd实战之一:极速体验](https://xinchen.blog.csdn.net/article/details/115276045)\n2. [jetcd实战之二:基本操作](https://xinchen.blog.csdn.net/article/details/115419439)\n3. [jetcd实战之三:进阶操作(事务、监听、租约)](https://xinchen.blog.csdn.net/article/details/115434576)\n\n## disruptor学习特辑\n1. [快速入门](https://blog.csdn.net/boling_cavalry/article/details/117185656)\n2. [Disruptor类分析](https://blog.csdn.net/boling_cavalry/article/details/117318462)\n3. [环形队列的基础操作(不用Disruptor类)](https://blog.csdn.net/boling_cavalry/article/details/117386253)\n4. [事件消费知识点小结](https://blog.csdn.net/boling_cavalry/article/details/117395009)\n5. [事件消费实战](https://blog.csdn.net/boling_cavalry/article/details/117405835)\n6. [常见场景](https://blog.csdn.net/boling_cavalry/article/details/117575447)\n7. [等待策略](https://blog.csdn.net/boling_cavalry/article/details/117608051)\n8. [知识点补充(终篇)](https://blog.csdn.net/boling_cavalry/article/details/117636483)\n\n## MyBatis学习（初级版）\n1. [《MyBatis初级实战之一：Spring Boot集成》](https://xinchen.blog.csdn.net/article/details/107805840)\n2. [《MyBatis初级实战之二：增删改查》](https://xinchen.blog.csdn.net/article/details/107971293)\n3. [《MyBatis初级实战之三：springboot集成druid》](https://xinchen.blog.csdn.net/article/details/108092045)\n4. [《MyBatis初级实战之四：druid多数据源》](https://xinchen.blog.csdn.net/article/details/108179671)\n5. [《MyBatis初级实战之五：一对一关联查询》](https://xinchen.blog.csdn.net/article/details/109020733)\n6. [《MyBatis初级实战之六：一对多关联查询》](https://xinchen.blog.csdn.net/article/details/109193441)\n\n## java版gRPC实战专辑\n1. [用proto生成代码](https://xinchen.blog.csdn.net/article/details/115049443)\n2. [服务发布和调用](https://xinchen.blog.csdn.net/article/details/115803738)\n3. [服务端流](https://xinchen.blog.csdn.net/article/details/115983001)\n4. [客户端流](https://xinchen.blog.csdn.net/article/details/116097756)\n5. [双向流](https://xinchen.blog.csdn.net/article/details/116354293)\n6. [客户端动态获取服务端地址](https://xinchen.blog.csdn.net/article/details/116479078)\n7. [基于eureka的注册发现](https://xinchen.blog.csdn.net/article/details/116635441)\n\n## Java扩展Nginx专辑\n1. [《Java扩展Nginx之一：你好，nginx-clojure》](https://xinchen.blog.csdn.net/article/details/122764774)\n2. [《Java扩展Nginx之二：编译nginx-clojure源码》](https://xinchen.blog.csdn.net/article/details/122773081)\n3. [《Java扩展Nginx之三：基础配置项》](https://xinchen.blog.csdn.net/article/details/122779437)\n4. [《Java扩展Nginx之四：远程调试》](https://xinchen.blog.csdn.net/article/details/122782310)\n5. [《Java扩展Nginx之五：五大handler(系列最核心)》](https://xinchen.blog.csdn.net/article/details/122788726)\n6. [《Java扩展Nginx之六：两大filter》](https://xinchen.blog.csdn.net/article/details/122825530)\n7. [《Java扩展Nginx之七：共享内存》](https://xinchen.blog.csdn.net/article/details/123015410)\n8. [《精选版：用Java扩展Nginx（nginx-clojure 入门）》](https://xinchen.blog.csdn.net/article/details/126456209)\n\n## 视图邻域\n1. [Java版流媒体编解码和图像处理(JavaCPP+FFmpeg)](https://xinchen.blog.csdn.net/article/details/119062543)\n2. [《Ubuntu16桌面版编译和安装OpenCV4》](https://xinchen.blog.csdn.net/article/details/120964456)\n3. [《Ubuntu16桌面版编译OpenCV4的java库和so库》](https://xinchen.blog.csdn.net/article/details/121069372)\n\n# Spring领域\n\n##  Spring基础\n1. [《实战spring自定义属性(schema)：快速体验》](https://blog.csdn.net/boling_cavalry/article/details/74066494)\n2. [《spring的BeanFactory和ApplicationContext》](https://blog.csdn.net/boling_cavalry/article/details/81603303)\n3. [《ImportSelector与DeferredImportSelector的区别（spring4）》](https://blog.csdn.net/boling_cavalry/article/details/82555352)\n4. [《实战spring自定义属性(schema)》](https://blog.csdn.net/boling_cavalry/article/details/101369202)\n## Spring扩展实战专题\n1. [《spring4.1.8扩展实战之一：自定义环境变量验证》](https://blog.csdn.net/boling_cavalry/article/details/81474340)\n2. [《spring4.1.8扩展实战之二：Aware接口揭秘》](https://blog.csdn.net/boling_cavalry/article/details/81611426)\n3. [《spring4.1.8扩展实战之三：广播与监听》](https://blog.csdn.net/boling_cavalry/article/details/81697314)\n4. [《spring4.1.8扩展实战之四：感知spring容器变化(SmartLifecycle接口)》](https://blog.csdn.net/boling_cavalry/article/details/82051356)\n5. [《spring4.1.8扩展实战之五：改变bean的定义(BeanFactoryPostProcessor接口)》](https://blog.csdn.net/boling_cavalry/article/details/82083889)\n6. [《spring4.1.8扩展实战之六：注册bean到spring容器(BeanDefinitionRegistryPostProcessor接口)》](https://blog.csdn.net/boling_cavalry/article/details/82193692)\n7. [《spring4.1.8扩展实战之七：控制bean(BeanPostProcessor接口)》](https://blog.csdn.net/boling_cavalry/article/details/82250986)\n8. [《spring4.1.8扩展实战之八：Import注解》](https://blog.csdn.net/boling_cavalry/article/details/82530167)\n\n## 畅游Spring源码世界\n1. [《修改和编译spring源码，构建jar(spring-context-4.0.2.RELEASE)》](https://blog.csdn.net/boling_cavalry/article/details/73139161)\n2. [《spring+mybatis启动NoClassDefFoundError异常分析三部曲之一：稳定重现问题》](https://blog.csdn.net/boling_cavalry/article/details/73071020)\n3. [《spring+mybatis启动NoClassDefFoundError异常分析三部曲之二：定位错误》](https://blog.csdn.net/boling_cavalry/article/details/73442311)\n4. [《spring+mybatis启动NoClassDefFoundError异常分析三部曲之三：改spring源码，取详细错误》](https://blog.csdn.net/boling_cavalry/article/details/73759475)\n5. [《SpringMVC源码分析：POST请求中的文件处理》](https://blog.csdn.net/boling_cavalry/article/details/79375713)\n6. [《下载Spring4.1.x源码并用IntelliJ IDEA打开》](https://blog.csdn.net/boling_cavalry/article/details/79426075)\n7. [《windows下修改、编译、构建spring-framework4.1.8.RELEASE源码》](https://blog.csdn.net/boling_cavalry/article/details/80791786)\n8. [《spring4.1.8初始化源码学习三部曲之一：AbstractApplicationContext构造方法》](https://blog.csdn.net/boling_cavalry/article/details/80957707)\n9. [《spring4.1.8初始化源码学习三部曲之二：setConfigLocations方法》](https://blog.csdn.net/boling_cavalry/article/details/80958832)\n10. [《spring4.1.8初始化源码学习三部曲之三：AbstractApplicationContext.refresh方法》](https://blog.csdn.net/boling_cavalry/article/details/81045637)\n\n## SpringBoot基础\n1. [《自定义spring boot starter三部曲之一：准备工作》](https://blog.csdn.net/boling_cavalry/article/details/82956512)\n2. [《自定义spring boot starter三部曲之二：实战开发》](https://blog.csdn.net/boling_cavalry/article/details/83041472)\n3. [《自定义spring boot starter三部曲之三：源码分析spring.factories加载过程》](https://blog.csdn.net/boling_cavalry/article/details/83048588)\n4. [《基于spring boot框架访问zookeeper》](https://blog.csdn.net/boling_cavalry/article/details/69802622)\n5. [《Docker下运行springboot》](https://blog.csdn.net/boling_cavalry/article/details/78991870)\n6. [《springboot线程池的使用和扩展》](https://blog.csdn.net/boling_cavalry/article/details/79120268)\n7. [《SpringBoot下用Kyro作为Redis序列化工具》](https://blog.csdn.net/boling_cavalry/article/details/80710774)\n8. [《springboot应用查询城市天气》](https://blog.csdn.net/boling_cavalry/article/details/86770023)\n9. [《立即可用的实战源码(springboot+redis+mybatis+restTemplate)》](https://blog.csdn.net/boling_cavalry/article/details/101999606)\n10. [《SpringBoot-2.3镜像方案为什么要做多个layer》](https://blog.csdn.net/boling_cavalry/article/details/106600620)\n11. [《体验SpringBoot(2.3)应用制作Docker镜像(官方方案)》](https://blog.csdn.net/boling_cavalry/article/details/106597358)\n12. [《详解SpringBoot(2.3)应用制作Docker镜像(官方方案)》](https://blog.csdn.net/boling_cavalry/article/details/106598189)\n13. [《掌握SpringBoot-2.3的容器探针：基础篇》](https://blog.csdn.net/boling_cavalry/article/details/106605264)\n14. [《掌握SpringBoot-2.3的容器探针：深入篇》](https://blog.csdn.net/boling_cavalry/article/details/106606442)\n15. [《掌握SpringBoot-2.3的容器探针：实战篇》](https://blog.csdn.net/boling_cavalry/article/details/106607225)\n16. [《springboot的jar为何能独立运行》](https://blog.csdn.net/boling_cavalry/article/details/106966579)\n17. [《SpringBoot(2.4)应用制作Docker镜像(Gradle版官方方案)》](https://xinchen.blog.csdn.net/article/details/115451129)\n\n## SpringBoot进阶实战\n1. [《Docker下redis与springboot三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/78991422)\n2. [《Docker下redis与springboot三部曲之二：安装redis主从和哨兵》](https://blog.csdn.net/boling_cavalry/article/details/78995407)\n3. [《Docker下redis与springboot三部曲之三：springboot下访问redis哨兵》](https://blog.csdn.net/boling_cavalry/article/details/79041129)\n4. [《SpringBoot应用使用自定义的ApplicationContext实现类》](https://blog.csdn.net/boling_cavalry/article/details/81587556)\n5. [《Spring Boot应用在kubernetes的sidecar设计与实战》](https://blog.csdn.net/boling_cavalry/article/details/83784113)\n6. [《Spring Native实战(畅快体验79毫秒启动springboot应用)》](https://blog.csdn.net/boling_cavalry/article/details/117153661)\n7. [《三分钟体验：SpringBoot用深度学习模型识别数字》](https://blog.csdn.net/boling_cavalry/article/details/118290933)\n8. [《SpringBoot用深度学习模型识别数字：开发详解》](https://blog.csdn.net/boling_cavalry/article/details/118353259)\n\n## SpringCloud基础\n1. [《极速体验SpringCloud Gateway》](https://blog.csdn.net/boling_cavalry/article/details/94907172)\n2. [《应用升级SpringCloud版本时的注意事项(Dalston升级到Edgware)》](https://blog.csdn.net/boling_cavalry/article/details/82683755)\n\n## SpringCloud实战\n1. [《Docker下的Spring Cloud三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/79177930)\n2. [《Docker下的Spring Cloud三部曲之二：细说Spring Cloud开发》](https://blog.csdn.net/boling_cavalry/article/details/79134497)\n3. [《Docker下的Spring Cloud三部曲之三：在线横向扩容》](https://blog.csdn.net/boling_cavalry/article/details/79192376)\n4. [《本地服务调用K8S环境中的SpringCloud微服务实战》](https://blog.csdn.net/boling_cavalry/article/details/90578934)\n\n## Eureka源码分析专题\n1. [《Spring Cloud源码分析之Eureka篇第一章：准备工作》](https://blog.csdn.net/boling_cavalry/article/details/81809929)\n2. [《Spring Cloud源码分析之Eureka篇第二章：注册中心启动类上的注解EnableEurekaServer》](https://blog.csdn.net/boling_cavalry/article/details/81809860)\n3. [《Spring Cloud源码分析之Eureka篇第三章：EnableDiscoveryClient与EnableEurekaClient的区别(Edgware版本)》](https://blog.csdn.net/boling_cavalry/article/details/82668480)\n4. [《Spring Cloud源码分析之Eureka篇第四章：服务注册是如何发起的》](https://blog.csdn.net/boling_cavalry/article/details/82721583)\n5. [《Spring Cloud源码分析之Eureka篇第五章：更新服务列表》](https://blog.csdn.net/boling_cavalry/article/details/82813180)\n6. [《Spring Cloud源码分析之Eureka篇第六章：服务注册》](https://blog.csdn.net/boling_cavalry/article/details/82861618)\n7. [《Spring Cloud源码分析之Eureka篇第七章：续约》](https://blog.csdn.net/boling_cavalry/article/details/82915355)\n8. [《Spring Cloud源码分析之Eureka篇第八章：服务注册名称的来历》](https://blog.csdn.net/boling_cavalry/article/details/82930728)\n\n## Spring Cloud Gateway从入门到提高\n1. [《Spring Cloud Gateway实战之一：初探》](https://xinchen.blog.csdn.net/article/details/119490780)\n2. [《Spring Cloud Gateway实战之二：更多路由配置方式》](https://xinchen.blog.csdn.net/article/details/119592175)\n3. [《Spring Cloud Gateway实战之三：动态路由》](https://xinchen.blog.csdn.net/article/details/119705402)\n4. [《Spring Cloud Gateway实战之四：内置predicate小结》](https://xinchen.blog.csdn.net/article/details/119724550)\n5. [《Spring Cloud Gateway实战之五：内置filter》](https://xinchen.blog.csdn.net/article/details/119814985)\n6. [《Spring Cloud Gateway的断路器(CircuitBreaker)功能》](https://xinchen.blog.csdn.net/article/details/119849436)\n7. [《Spring Cloud Gateway自定义过滤器实战(观测断路器状态变化)》](https://xinchen.blog.csdn.net/article/details/119967617)\n8. [《Spring Cloud Gateway限流实战》](https://xinchen.blog.csdn.net/article/details/119989069)\n9. [《Spring Cloud Gateway修改请求和响应body的内容》](https://xinchen.blog.csdn.net/article/details/120096926)\n10. [《Spring Cloud Gateway过滤器精确控制异常返回(分析篇)》](https://xinchen.blog.csdn.net/article/details/120114474)\n11. [《Spring Cloud Gateway过滤器精确控制异常返回(实战，控制http返回码和message字段)》](https://xinchen.blog.csdn.net/article/details/120170949)\n12. [《Spring Cloud Gateway过滤器精确控制异常返回(实战，完全定制返回body)》](https://xinchen.blog.csdn.net/article/details/120239199)\n13. [《Spring Cloud Gateway编码实现任意地址跳转》](https://xinchen.blog.csdn.net/article/details/121805244)\n\n## spring-cloud-alibaba实战\n1. [《Docker下,两分钟极速体验Nacos》](https://blog.csdn.net/boling_cavalry/article/details/97617353)；\n2. [《Docker下的Nacos环境开发》](https://xinchen.blog.csdn.net/article/details/98328270)；\n3. [《Docker下,两分钟极速体验Nacos配置中心》](https://xinchen.blog.csdn.net/article/details/99708769)；\n4. [《Docker下Nacos配置应用开发》](https://xinchen.blog.csdn.net/article/details/100067833)；\n5. [《Docker下Nacos持久化配置》](https://xinchen.blog.csdn.net/article/details/100171289);\n\n## spring-cloud-kubernetes特辑\n1. [《spring-cloud-kubernetes官方demo运行实战》](https://blog.csdn.net/boling_cavalry/article/details/91346780)\n2. [《你好spring-cloud-kubernetes》](https://blog.csdn.net/boling_cavalry/article/details/91351411)\n3. [《spring-cloud-kubernetes背后的三个关键知识点》](https://blog.csdn.net/boling_cavalry/article/details/92069486)\n4. [《spring-cloud-kubernetes的服务发现和轮询实战(含熔断)》](https://xinchen.blog.csdn.net/article/details/92394559)\n5. [《spring-cloud-kubernetes与SpringCloud Gateway》](https://xinchen.blog.csdn.net/article/details/95001691)\n6. [《spring-cloud-kubernetes与k8s的configmap》](https://xinchen.blog.csdn.net/article/details/95804909)\n7. [《spring-cloud-kubernetes自动同步k8s的configmap更新》](https://xinchen.blog.csdn.net/article/details/97529652)\n\n## spring-cloud-square特辑\n1. [五分钟搞懂spring-cloud-square](https://xinchen.blog.csdn.net/article/details/119130289)\n2. [spring-cloud-square开发实战(三种类型全覆盖)](https://xinchen.blog.csdn.net/article/details/119304887)\n3. [spring-cloud-square源码速读(spring-cloud-square-okhttp篇)](https://xinchen.blog.csdn.net/article/details/119360559)\n4. [spring-cloud-square源码速读（retrofit + okhttp篇）](https://xinchen.blog.csdn.net/article/details/119383904)\n\n## dubbo实战特辑\n1. [准备和初体验](https://xinchen.blog.csdn.net/article/details/109096867)\n2. [与SpringBoot集成](https://xinchen.blog.csdn.net/article/details/109142783)\n3. [使用Zookeeper注册中心](https://xinchen.blog.csdn.net/article/details/109147843)\n4. [管理控制台dubbo-admin](https://xinchen.blog.csdn.net/article/details/109267151)\n\n## java云原生系列\n1. [strimzi实战之一：简介和准备](https://xinchen.blog.csdn.net/article/details/127705101)\n2. [strimzi实战之二：部署和消息功能初体验](https://xinchen.blog.csdn.net/article/details/127707552)\n4. [strimzi实战之三：prometheus+grafana监控（按官方文档搞不定监控？不妨看看本文，已经踩过坑了）](https://xinchen.blog.csdn.net/article/details/127724405)\n4. [Strimzi Kafka Bridge(桥接)实战之一：简介和部署](https://xinchen.blog.csdn.net/article/details/127832731)\n5. [Strimzi Kafka Bridge(桥接)实战之二：生产和发送消息](https://xinchen.blog.csdn.net/article/details/127924065)\n6. [Strimzi Kafka Bridge(桥接)实战之三：自制sdk(golang版本)](https://xinchen.blog.csdn.net/article/details/127938106)\n\n\n# Docker\n\n## 基础知识\n1. [《Docker的准备，安装，初体验》](https://blog.csdn.net/boling_cavalry/article/details/60367393)\n2. [《CentOS7安装docker》](https://blog.csdn.net/boling_cavalry/article/details/77752721)\n3. [《docker下载镜像慢怎么办？daocloud加速器来帮你》](https://blog.csdn.net/boling_cavalry/article/details/77833069)\n4. [《docker私有仓库搭建与使用实战》](https://blog.csdn.net/boling_cavalry/article/details/78818462)\n5. [《maven构建docker镜像三部曲之一：准备环境》](https://blog.csdn.net/boling_cavalry/article/details/78869466)\n6. [《maven构建docker镜像三部曲之二：编码和构建镜像》](https://blog.csdn.net/boling_cavalry/article/details/78872020)\n7. [《maven构建docker镜像三部曲之三：推送到远程仓库(内网和阿里云)》](https://blog.csdn.net/boling_cavalry/article/details/78934391)\n8. [《查看Docker容器的信息》](https://blog.csdn.net/boling_cavalry/article/details/80215214)\n9. [《Docker镜像制作实战：设置时区和系统编码》](https://blog.csdn.net/boling_cavalry/article/details/80381258)\n10. [《Docker镜像列表中的none:none是什么》](https://blog.csdn.net/boling_cavalry/article/details/90727359)\n11. [《Docker多阶段构建实战(multi-stage builds)》](https://blog.csdn.net/boling_cavalry/article/details/90742657)\n12. [《docker的/var/run/docker.sock参数》](https://blog.csdn.net/boling_cavalry/article/details/92846483)\n13. [《docker与gosu》](https://blog.csdn.net/boling_cavalry/article/details/93380447)\n14. [《Docker远程连接设置》](https://blog.csdn.net/boling_cavalry/article/details/100049996)\n15. [《TLS加密远程连接Docker》](https://blog.csdn.net/boling_cavalry/article/details/100601169)\n19. [《CentOS部署Harbor镜像仓库》](https://blog.csdn.net/boling_cavalry/article/details/101100898)\n20. [《Docker常用命令小记》](https://blog.csdn.net/boling_cavalry/article/details/101145739)\n21. [《一行命令安装docker和docker-compose(CentOS7)》](https://blog.csdn.net/boling_cavalry/article/details/101830200)\n22. [《极速体验docker容器健康》](https://blog.csdn.net/boling_cavalry/article/details/102641942)\n23. [《Java应用在docker环境配置容器健康检查》](https://blog.csdn.net/boling_cavalry/article/details/102649435)\n24. [《docker-compose下的java应用启动顺序两部曲之一：问题分析》](https://blog.csdn.net/boling_cavalry/article/details/102874052)\n25. [《docker-compose下的java应用启动顺序两部曲之二：实战》](https://blog.csdn.net/boling_cavalry/article/details/102880881)\n26. [《设置非root账号不用sudo直接执行docker命令》](https://blog.csdn.net/boling_cavalry/article/details/106590784)\n27. [《SpringBoot-2.3镜像方案为什么要做多个layer》](https://blog.csdn.net/boling_cavalry/article/details/106600620)\n\n## 进阶实战\n1. [《Docker下的web开发和Tomcat部署》](https://blog.csdn.net/boling_cavalry/article/details/61415268)\n2. [《实战docker，编写Dockerfile定制tomcat镜像，实现web应用在线部署》](https://blog.csdn.net/boling_cavalry/article/details/70184605)\n3. [《实战docker，构建nginx反向代理tomcat，学习link和docker-compose》](https://blog.csdn.net/boling_cavalry/article/details/70194072)\n4. [《在docker上编译openjdk8》](https://blog.csdn.net/boling_cavalry/article/details/70243954)\n5. [《修改，编译，GDB调试openjdk8源码(docker环境下)》](https://blog.csdn.net/boling_cavalry/article/details/70557537)\n6. [《让docker中的mysql启动时自动执行sql》](https://blog.csdn.net/boling_cavalry/article/details/71055159)\n7. [《Docker搭建disconf环境，三部曲之一：极速搭建disconf》](https://blog.csdn.net/boling_cavalry/article/details/71082610)\n8. [《Docker搭建disconf环境，三部曲之二：本地快速构建disconf镜像》](https://blog.csdn.net/boling_cavalry/article/details/71107498)\n9. [《Docker搭建disconf环境，三部曲之三：细说搭建过程》](https://blog.csdn.net/boling_cavalry/article/details/71120725)\n10. [《docker下使用disconf：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/71404395)\n11. [《docker下使用disconf：细说demo开发》](https://blog.csdn.net/boling_cavalry/article/details/71424124)\n12. [《jedis使用入门（Docker环境下）》](https://blog.csdn.net/boling_cavalry/article/details/71440053)\n13. [《Docker下kafka学习，三部曲之一：极速体验kafka》](https://blog.csdn.net/boling_cavalry/article/details/71576775)\n14. [《Docker下kafka学习，三部曲之二：本地环境搭建》](https://blog.csdn.net/boling_cavalry/article/details/71601189)\n15. [《Docker下kafka学习，三部曲之三：java开发》](https://blog.csdn.net/boling_cavalry/article/details/71634631)\n16. [《Docker下部署dubbo，消费者应用无法使用link参数的问题》](https://blog.csdn.net/boling_cavalry/article/details/72388834)\n17. [《Docker下dubbo开发，三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/72303126)\n18. [《Docker下dubbo开发，三部曲之二：本地环境搭建》](https://blog.csdn.net/boling_cavalry/article/details/72460526)\n19. [《Docker下dubbo开发，三部曲之三：java开发》](https://blog.csdn.net/boling_cavalry/article/details/72789984)\n20. [《Docker下实战zabbix三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/76857936)\n21. [《Docker下实战zabbix三部曲之二：监控其他机器》](https://blog.csdn.net/boling_cavalry/article/details/77095153)\n22. [《Docker下实战zabbix三部曲之三：自定义监控项》](https://blog.csdn.net/boling_cavalry/article/details/77410178)\n23. [《极速体验编译openjdk8（docker环境）》](https://blog.csdn.net/boling_cavalry/article/details/77623193)\n24. [《Docker下HBase学习，三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/78041775)\n25. [《Docker下HBase学习，三部曲之二：集群HBase搭建》](https://blog.csdn.net/boling_cavalry/article/details/78041811)\n26. [《Docker下HBase学习，三部曲之三：java开发》](https://blog.csdn.net/boling_cavalry/article/details/78156406)\n27. [《Docker下，极速体验mongodb》](https://blog.csdn.net/boling_cavalry/article/details/78168085)\n28. [《制作mongodb的Docker镜像文件》](https://blog.csdn.net/boling_cavalry/article/details/78172113)\n29. [《Docker下，实战mongodb副本集（Replication）》](https://blog.csdn.net/boling_cavalry/article/details/78173636)\n30. [《Docker下安装Rockmongo，图形化操作mongodb》](https://blog.csdn.net/boling_cavalry/article/details/78234762)\n31. [《Docker下的Kafka学习之一：制作集群用的镜像文件》](https://blog.csdn.net/boling_cavalry/article/details/78244943)\n32. [《Docker下的Kafka学习之二：搭建集群环境》](https://blog.csdn.net/boling_cavalry/article/details/78309050)\n33. [《Docker下的Kafka学习之三：集群环境下的java开发》](https://blog.csdn.net/boling_cavalry/article/details/78386451)\n34. [《Docker下，极速体验编译pinpoint1.6.x分支》](https://xinchen.blog.csdn.net/article/details/78440890)\n35. [《把pinpoint编译环境做成Docker镜像文件》](https://blog.csdn.net/boling_cavalry/article/details/78447310)\n36. [《Docker下，极速体验pinpoint1.6.3》](https://blog.csdn.net/boling_cavalry/article/details/78447314)\n37. [《Docker下，pinpoint环境搭建》](https://blog.csdn.net/boling_cavalry/article/details/78448564)\n38. [《pinpoint插件开发之一：牛刀小试，调整gson插件》](https://blog.csdn.net/boling_cavalry/article/details/78495628)\n39. [《pinpoint插件开发之二：从零开始新建一个插件》](https://blog.csdn.net/boling_cavalry/article/details/78568073)\n40. [《docker下的Jenkins安装和体验》](https://blog.csdn.net/boling_cavalry/article/details/78942408)\n41. [《Docker下运行springboot》](https://blog.csdn.net/boling_cavalry/article/details/78991870)\n42. [《Docker下redis与springboot三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/78991422)\n43. [《Docker下redis与springboot三部曲之二：安装redis主从和哨兵》](https://blog.csdn.net/boling_cavalry/article/details/78995407)\n44. [《Docker下redis与springboot三部曲之三：springboot下访问redis哨兵》](https://blog.csdn.net/boling_cavalry/article/details/79041129)\n45. [《实战maven私有仓库三部曲之三：Docker下搭建maven私有仓库》](https://blog.csdn.net/boling_cavalry/article/details/79111740)\n46. [《Docker下的Spring Cloud三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/79177930)\n47. [《Docker下的Spring Cloud三部曲之二：细说Spring Cloud开发》](https://blog.csdn.net/boling_cavalry/article/details/79134497)\n48. [《Docker下的Spring Cloud三部曲之三：在线横向扩容》](https://blog.csdn.net/boling_cavalry/article/details/79192376)\n49. [《Docker下的OpenResty三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/79290944)\n50. [《Docker下的OpenResty三部曲之二：细说开发》](https://blog.csdn.net/boling_cavalry/article/details/79292356)\n51. [《Docker下的OpenResty三部曲之三：OpenResty加Tomcat的服务》](https://blog.csdn.net/boling_cavalry/article/details/79311164)\n52. [《Docker下Java文件上传服务三部曲之一：准备环境》](https://blog.csdn.net/boling_cavalry/article/details/79361159)\n53. [《Docker下Java文件上传服务三部曲之二：服务端开发》](https://blog.csdn.net/boling_cavalry/article/details/79367520)\n54. [《Docker下Java文件上传服务三部曲之三：wireshark抓包分析》](https://blog.csdn.net/boling_cavalry/article/details/79380053)\n55. [《Docker下手工配置MySQL主从》](https://blog.csdn.net/boling_cavalry/article/details/79751085)\n56. [《Docker下MySQL主从三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/79747488)\n57. [《Docker下MySQL主从三部曲之二：细说镜像制作》](https://blog.csdn.net/boling_cavalry/article/details/79775617)\n58. [《Docker下MySQL主从三部曲之三：binlog日志参数实战》](https://blog.csdn.net/boling_cavalry/article/details/79782008)\n59. [《Docker下ELK三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/79950677)\n60. [《Docker下ELK三部曲之二：细说开发》](https://blog.csdn.net/boling_cavalry/article/details/79972444)\n61. [《Docker下ELK三部曲之三：K8S上的ELK和应用日志上报》](https://blog.csdn.net/boling_cavalry/article/details/80141800)\n62. [《Docker镜像制作实战：设置时区和系统编码》](https://blog.csdn.net/boling_cavalry/article/details/80381258)\n63. [《没有JDK和Maven，用Docker也能构建Maven工程》](https://blog.csdn.net/boling_cavalry/article/details/80384722)\n64. [《Docker下RabbitMQ延时队列实战两部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/80630100)\n65. [《Docker下RabbitMQ延时队列实战两部曲之二：细说开发》](https://blog.csdn.net/boling_cavalry/article/details/80635050)\n66. [《利用Docker极速下载OpenJDK11源码》](https://blog.csdn.net/boling_cavalry/article/details/83245148)\n67. [《极简，利用Docker仅两行命令就能下载和编译OpenJDK11》](https://blog.csdn.net/boling_cavalry/article/details/83353102)\n68. [《kafka的Docker镜像使用说明(wurstmeister/kafka)》](https://blog.csdn.net/boling_cavalry/article/details/85395080)\n69. [《如何使用Docker内的kafka服务》](https://blog.csdn.net/boling_cavalry/article/details/85528519)\n70. [《自己动手制作elasticsearch-head的Docker镜像》](https://blog.csdn.net/boling_cavalry/article/details/86663168)\n71. [《自己动手制作elasticsearch的ik分词器的Docker镜像》](https://blog.csdn.net/boling_cavalry/article/details/86668180)\n72. [《docker下，一行命令搭建elasticsearch6.5.0集群(带head插件和ik分词器)》](https://blog.csdn.net/boling_cavalry/article/details/86669450)\n73. [《docker下，极速搭建spark集群(含hdfs集群)》](https://blog.csdn.net/boling_cavalry/article/details/86851069)\n74. [《docker下的spark集群，调整参数榨干硬件》](https://blog.csdn.net/boling_cavalry/article/details/87438666)\n75. [《用golang官方Docker镜像运行项目》](https://blog.csdn.net/boling_cavalry/article/details/87904485)\n76. [《Docker下Prometheus和Grafana三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/88367137)\n77. [《Docker下Prometheus和Grafana三部曲之二：细说Docker编排》](https://blog.csdn.net/boling_cavalry/article/details/88374848)\n78. [《Docker下Prometheus和Grafana三部曲之三：自定义监控项开发和配置》](https://blog.csdn.net/boling_cavalry/article/details/88375734)\n79. [《Docker与Jib(maven插件版)实战》](https://blog.csdn.net/boling_cavalry/article/details/94355659)\n80. [《Docker下,两分钟极速体验Nacos》](https://blog.csdn.net/boling_cavalry/article/details/97617353)\n81. [《Docker下的Nacos环境开发》](https://blog.csdn.net/boling_cavalry/article/details/98328270)\n82. [《Docker下,两分钟极速体验Nacos配置中心》](https://blog.csdn.net/boling_cavalry/article/details/99708769)\n83. [《Docker下Nacos配置应用开发》](https://blog.csdn.net/boling_cavalry/article/details/100067833)\n84. [《Docker下Nacos持久化配置》](https://blog.csdn.net/boling_cavalry/article/details/100171289)\n85. [《Docker下多机器免密码SSH登录》](https://blog.csdn.net/boling_cavalry/article/details/101369208)\n86. [《IDEA的Docker插件实战(Dockerfile篇)》](https://blog.csdn.net/boling_cavalry/article/details/100051325)\n87. [《IDEA的Docker插件实战(Docker Image篇)》](https://blog.csdn.net/boling_cavalry/article/details/100062008)\n88. [《IDEA的Docker插件实战(Docker-compose篇)》](https://blog.csdn.net/boling_cavalry/article/details/100064934)\n89. [《Docker Swarm从部署到基本操作》](https://blog.csdn.net/boling_cavalry/article/details/100634272)\n90. [《ARM64架构下，OpenJDK的官方Docker镜像为何没有8版本？》](https://blog.csdn.net/boling_cavalry/article/details/101908575)\n91. [《ARM架构下的Docker环境，OpenJDK官方没有8版本镜像，如何完美解决？》](https://blog.csdn.net/boling_cavalry/article/details/101855126)\n92. [《Docker部署flink备忘》](https://blog.csdn.net/boling_cavalry/article/details/105015546)\n93. [《用GitHub Actions制作Docker镜像》](https://xinchen.blog.csdn.net/article/details/115476859)\n94. [《Docker下elasticsearch8部署、扩容、基本操作实战(含kibana)》](https://xinchen.blog.csdn.net/article/details/125196035)\n95. [《docker-compose快速部署elasticsearch-8.x集群+kibana》](https://xinchen.blog.csdn.net/article/details/125232858)\n96. [《群晖DS218+部署PostgreSQL(docker)》](https://xinchen.blog.csdn.net/article/details/124701835)\n\n\n# kubernetes\n\n## kubernetes基础\n1. [《Kubernetes持久卷实战两部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/79516039)\n2. [《Kubernetes持久卷实战两部曲之二：细说开发》](https://blog.csdn.net/boling_cavalry/article/details/79592461)\n3. [《实战Kubernetes动态卷存储(NFS)》](https://blog.csdn.net/boling_cavalry/article/details/79598905)\n4. [《Spring Boot应用在kubernetes的sidecar设计与实战》](https://blog.csdn.net/boling_cavalry/article/details/83784113)\n5. [《Kubernetes源码学习之一:下载和编译源码》](https://blog.csdn.net/boling_cavalry/article/details/88591982)\n6. [《Kubernetes深入学习之二:编译和部署镜像(api-server)》](https://blog.csdn.net/boling_cavalry/article/details/88603293)\n7. [《k8s自定义controller三部曲之一:创建CRD（Custom Resource Definition）》](https://blog.csdn.net/boling_cavalry/article/details/88917818)\n8. [《k8s自定义controller三部曲之二:自动生成代码》](https://blog.csdn.net/boling_cavalry/article/details/88924194)\n9. [《k8s自定义controller三部曲之三：编写controller代码》](https://blog.csdn.net/boling_cavalry/article/details/88934063)\n10. [《查看k8s的etcd数据》](https://blog.csdn.net/boling_cavalry/article/details/88958242)\n11. [《kubernetes部署metrics-server》](https://blog.csdn.net/boling_cavalry/article/details/105006295)\n12. [《Kubernetes的Local Persistent Volumes使用小记》](https://blog.csdn.net/boling_cavalry/article/details/106453727)\n13. [《开发阶段，将SpringBoot应用快速部署到K8S》](https://blog.csdn.net/boling_cavalry/article/details/106594392)\n14. [快速搭建云原生开发环境（k8s+pv+prometheus+grafana）](https://xinchen.blog.csdn.net/article/details/127601664)\n\n## kubernetes安装部署\n1. [《kubeadm搭建kubernetes集群之一：构建标准化镜像》](https://blog.csdn.net/boling_cavalry/article/details/78694206)\n2. [《kubeadm搭建kubernetes集群之二：创建master节点》](https://blog.csdn.net/boling_cavalry/article/details/78700527)\n3. [《kubeadm搭建kubernetes集群之三：加入node节点》](https://blog.csdn.net/boling_cavalry/article/details/78703364)\n4. [《rancher下的kubernetes之一：构建标准化vmware镜像》](https://blog.csdn.net/boling_cavalry/article/details/78762829)\n5. [《rancher下的kubernetes之二：安装rancher和kubernetes》](https://blog.csdn.net/boling_cavalry/article/details/78764915)\n6. [《rancher下的kubernetes之三：在linux上安装kubectl工具》](https://blog.csdn.net/boling_cavalry/article/details/79223091)\n7. [《CentOS7环境安装Kubernetes四部曲之一：标准化机器准备》](https://blog.csdn.net/boling_cavalry/article/details/79613037)\n8. [《CentOS7环境安装Kubernetes四部曲之二：配置模板和安装master》](https://blog.csdn.net/boling_cavalry/article/details/79615597)\n9. [《CentOS7环境安装Kubernetes四部曲之三：添加节点》](https://blog.csdn.net/boling_cavalry/article/details/79621557)\n10. [《CentOS7环境安装Kubernetes四部曲之四：安装kubectl工具》](https://blog.csdn.net/boling_cavalry/article/details/79624655)\n11. [《CentOS7环境部署kubenetes1.12版本五部曲之一：标准化机器》](https://blog.csdn.net/boling_cavalry/article/details/83692428)\n12. [《CentOS7环境部署kubenetes1.12版本五部曲之二：创建master节点》](https://blog.csdn.net/boling_cavalry/article/details/83692606)\n13. [《CentOS7环境部署kubenetes1.12版本五部曲之三：node节点加入》](https://blog.csdn.net/boling_cavalry/article/details/83714209)\n14. [《CentOS7环境部署kubenetes1.12版本五部曲之四：安装dashboard》](https://blog.csdn.net/boling_cavalry/article/details/83715479)\n15. [《CentOS7环境部署kubenetes1.12版本五部曲之五：安装kubectl》](https://blog.csdn.net/boling_cavalry/article/details/83740262)\n16. [《极速安装和体验k8s(Minikube)》](https://blog.csdn.net/boling_cavalry/article/details/90547822)\n17. [《Linux安装minikube指南》](https://blog.csdn.net/boling_cavalry/article/details/91304127)\n18. [《kubespray2.11安装kubernetes1.15》](https://blog.csdn.net/boling_cavalry/article/details/103106314)\n19. [《极速安装kubernetes-1.22.0（三台CentOS7服务器）》](https://xinchen.blog.csdn.net/article/details/122893949)\n\n## kubernetes进阶实战\n1. [《kubernetes下的Nginx加Tomcat三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/79215453)\n2. [《kubernetes下的Nginx加Tomcat三部曲之二：细说开发》](https://blog.csdn.net/boling_cavalry/article/details/79232244)\n3. [《kubernetes下的Nginx加Tomcat三部曲之三：实战扩容和升级》](https://blog.csdn.net/boling_cavalry/article/details/79246527)\n4. [《Kubernetes下web服务的性能测试三部曲之一：准备工作》](https://blog.csdn.net/boling_cavalry/article/details/79321518)\n5. [《Kubernetes下web服务的性能测试三部曲之二：纵向扩容》](https://blog.csdn.net/boling_cavalry/article/details/79327660)\n6. [《Kubernetes下web服务的性能测试三部曲之三：横向扩容》](https://blog.csdn.net/boling_cavalry/article/details/79336661)\n7. [《在windows电脑上配置kubectl远程操作kubernetes》](https://blog.csdn.net/boling_cavalry/article/details/90577769)\n8. [《本地服务调用K8S环境中的SpringCloud微服务实战》](https://blog.csdn.net/boling_cavalry/article/details/90578934)\n9. [《kubernetes下的jenkins如何设置maven》](https://blog.csdn.net/boling_cavalry/article/details/104849839)\n10. [《K8S环境的Jenkin性能问题处理》](https://blog.csdn.net/boling_cavalry/article/details/105005245)\n11. [《kubernetes1.15极速部署prometheus和grafana》](https://xinchen.blog.csdn.net/article/details/105156849)\n12. [《K8S环境的Jenkin性能问题处理续篇(任务Pod设置)》](https://xinchen.blog.csdn.net/article/details/105181474)\n13. [《K8S的StorageClass实战(NFS)》](https://xinchen.blog.csdn.net/article/details/105465672)\n14. [《K8S环境快速部署Kafka(K8S外部可访问)》](https://xinchen.blog.csdn.net/article/details/105466163)\n15. [《K8S的Kafka监控(Prometheus+Grafana)》](https://xinchen.blog.csdn.net/article/details/105466788)\n16. [《Kubernetes的Group、Version、Resource学习小记》](https://xinchen.blog.csdn.net/article/details/113715847)\n17. [《Kubernetes亲和性学习笔记》](https://xinchen.blog.csdn.net/article/details/123189528)\n18. [《极速安装kubernetes-1.22.0（三台CentOS7服务器）》](https://blog.csdn.net/boling_cavalry/article/details/122893949)\n\n## kubernetes官方java客户端特辑\n1. [《Kubernetes官方java客户端之一：准备》](https://blog.csdn.net/boling_cavalry/article/details/107480015)\n2. [《Kubernetes官方java客户端之二：序列化和反序列化问题》](https://blog.csdn.net/boling_cavalry/article/details/107503695)\n3. [《Kubernetes官方java客户端之三：外部应用》](https://blog.csdn.net/boling_cavalry/article/details/107528068)\n4. [《Kubernetes官方java客户端之四：内部应用》](https://blog.csdn.net/boling_cavalry/article/details/107552495)\n5. [《Kubernetes官方java客户端之五：proto基本操作》](https://blog.csdn.net/boling_cavalry/article/details/107552722)\n6. [《Kubernetes官方java客户端之六：OpenAPI基本操作》](https://blog.csdn.net/boling_cavalry/article/details/107574722)\n\n## kubernetes官方go客户端特辑\n1. [client-go实战之一：准备工作](https://xinchen.blog.csdn.net/article/details/113753087)\n2. [client-go实战之二:RESTClient](https://xinchen.blog.csdn.net/article/details/113487087)\n3. [client-go实战之三：Clientset](https://xinchen.blog.csdn.net/article/details/113788269)\n4. [client-go实战之四：dynamicClient](https://xinchen.blog.csdn.net/article/details/113795523)\n5. [client-go实战之五：DiscoveryClient](https://xinchen.blog.csdn.net/article/details/113800054)\n6. [client-go实战之六:时隔两年，刷新版本继续实战](https://xinchen.blog.csdn.net/article/details/128686327)\n7. [client-go实战之七：准备一个工程管理后续实战的代码](https://xinchen.blog.csdn.net/article/details/128749438)\n8. [client-go实战之八:更新资源时的冲突错误处理](https://xinchen.blog.csdn.net/article/details/128745382)\n9. [client-go实战之九：手写一个kubernetes的controller](https://xinchen.blog.csdn.net/article/details/128753781)\n\n## Operator实战特辑\n1. [kubebuilder实战之一：准备工作](https://xinchen.blog.csdn.net/article/details/113035349)\n2. [kubebuilder实战之二：初次体验kubebuilder](https://xinchen.blog.csdn.net/article/details/113089414)\n3. [kubebuilder实战之三：基础知识速览](https://xinchen.blog.csdn.net/article/details/113815479)\n4. [kubebuilder实战之四：operator需求说明和设计](https://xinchen.blog.csdn.net/article/details/113822065)\n5. [kubebuilder实战之五：operator编码](https://xinchen.blog.csdn.net/article/details/113836090)\n6. [kubebuilder实战之六：构建部署运行](https://xinchen.blog.csdn.net/article/details/113840999)\n7. [kubebuilder实战之七：webhook](https://xinchen.blog.csdn.net/article/details/113922328)\n8. [kubebuilder实战之八：知识点小记](https://xinchen.blog.csdn.net/article/details/114215218)\n\n## helm实战\n1. [《helm实战之开发Chart》](https://blog.csdn.net/boling_cavalry/article/details/88759724)\n2. [《部署和体验Helm(2.16.1版本)》](https://blog.csdn.net/boling_cavalry/article/details/103667500)\n3. [《Helm部署和体验jenkins》](https://blog.csdn.net/boling_cavalry/article/details/103670976)\n4. [《Helm部署的服务如何修改配置》](https://blog.csdn.net/boling_cavalry/article/details/105004586)\n5. [《helm部署mysql》](https://xinchen.blog.csdn.net/article/details/105180743)\n\n## Serverless领域OpenFaaS特辑\n1. [部署](https://xinchen.blog.csdn.net/article/details/109805296)\n2. [函数入门](https://xinchen.blog.csdn.net/article/details/109816846)\n3. [Java函数](https://xinchen.blog.csdn.net/article/details/109845563)\n4. [模板操作(template)](https://xinchen.blog.csdn.net/article/details/109900209)\n5. [大话watchdog](https://xinchen.blog.csdn.net/article/details/109971608)\n6. [of-watchdog(为性能而生)](https://xinchen.blog.csdn.net/article/details/110285578)\n7. [java11模板解析](https://xinchen.blog.csdn.net/article/details/110310033)\n8. [OpenFaaS实战之八：自制模板(maven+jdk8)](https://xinchen.blog.csdn.net/article/details/114438355)\n9. [OpenFaaS实战之九：终篇，自制模板(springboot+maven+jdk8)](114483494)\n\n# 大数据\n\n## hive学习笔记\n1. [基本数据类型](https://xinchen.blog.csdn.net/article/details/109304044)\n2. [复杂数据类型](https://xinchen.blog.csdn.net/article/details/109344642)\n3. [内部表和外部表](https://xinchen.blog.csdn.net/article/details/109393908)\n4. [分区表](https://xinchen.blog.csdn.net/article/details/109404278)\n5. [分桶](https://xinchen.blog.csdn.net/article/details/109412454)\n6. [HiveQL基础](https://xinchen.blog.csdn.net/article/details/109432395)\n7. [内置函数](https://xinchen.blog.csdn.net/article/details/109440325)\n8. [Sqoop](https://xinchen.blog.csdn.net/article/details/109445825)\n9. [基础UDF](https://xinchen.blog.csdn.net/article/details/109457019)\n10. [用户自定义聚合函数(UDAF)](https://xinchen.blog.csdn.net/article/details/109499956)\n11. [UDTF](https://xinchen.blog.csdn.net/article/details/109530630)\n\n## CDH\n1. [《CDH5部署三部曲之一：准备工作》](https://xinchen.blog.csdn.net/article/details/105340968)\n2. [《CDH5部署三部曲之二：部署和设置》](https://xinchen.blog.csdn.net/article/details/105341713)\n3. [《CDH5部署三部曲之三：问题总结》](https://xinchen.blog.csdn.net/article/details/105342156)\n4. [《超简单的CDH6部署和体验(单机版)》](https://xinchen.blog.csdn.net/article/details/105356266)\n\n## Flink\n1. [《Flink1.7从安装到体验》](https://blog.csdn.net/boling_cavalry/article/details/85038527)\n2. [《开发第一个Flink应用》](https://blog.csdn.net/boling_cavalry/article/details/85059168)\n3. [《没有了可用Task slot，Flink新增任务会怎样？》](https://blog.csdn.net/boling_cavalry/article/details/85213905)\n4. [《Flink实战：消费Wikipedia实时消息》](https://blog.csdn.net/boling_cavalry/article/details/85205622)\n5. [《树莓派3B搭建Flink集群》](https://blog.csdn.net/boling_cavalry/article/details/85222494)\n6. [《Flink数据源拆解分析(WikipediaEditsSource)》](https://blog.csdn.net/boling_cavalry/article/details/85221446)\n7. [《Flink消费kafka消息实战》](https://blog.csdn.net/boling_cavalry/article/details/85549434)\n8. [《Docker部署flink备忘》](https://blog.csdn.net/boling_cavalry/article/details/105015546)\n9. [《Flink on Yarn三部曲之一：准备工作》](https://xinchen.blog.csdn.net/article/details/105356306)\n10. [《Flink on Yarn三部曲之二：部署和设置》](https://xinchen.blog.csdn.net/article/details/105356347)\n11. [《Flink on Yarn三部曲之三：提交Flink任务》](https://xinchen.blog.csdn.net/article/details/105356399)\n12. [《IDEA上运行Flink任务》](https://xinchen.blog.csdn.net/article/details/105459630)\n13. [《Flink1.9.2源码编译和使用》](https://xinchen.blog.csdn.net/article/details/105460060)\n14. [《Flink的DataSource三部曲之一：直接API》](https://xinchen.blog.csdn.net/article/details/105467076)\n15. [《Flink的DataSource三部曲之二:内置connector》](https://xinchen.blog.csdn.net/article/details/105471798)\n16. [《Flink的DataSource三部曲之三:自定义》](https://xinchen.blog.csdn.net/article/details/105472218)\n17. [《Flink的sink实战之一：初探》](https://blog.csdn.net/boling_cavalry/article/details/105597628)\n18. [《Flink的sink实战之二：kafka》](https://blog.csdn.net/boling_cavalry/article/details/105598224)\n19. [《Flink的sink实战之三：cassandra3》](https://blog.csdn.net/boling_cavalry/article/details/105598968)\n20. [《Flink的sink实战之四：自定义》](https://blog.csdn.net/boling_cavalry/article/details/105599511)\n21. [《Flink SQL Client初探》](https://blog.csdn.net/boling_cavalry/article/details/105964425)\n22. [《准备数据集用于flink学习》](https://blog.csdn.net/boling_cavalry/article/details/106033059)\n23. [《将CSV的数据发送到kafka(java版)》](https://blog.csdn.net/boling_cavalry/article/details/106033472)\n24. [《Flink SQL Client综合实战》](https://blog.csdn.net/boling_cavalry/article/details/106038219)\n26. [《Flink Native Kubernetes实战》](https://blog.csdn.net/boling_cavalry/article/details/106038957)\n27. [《Flink处理函数实战之一：深入了解ProcessFunction的状态操作(Flink-1.10)》](https://blog.csdn.net/boling_cavalry/article/details/106040312)\n28. [《Flink处理函数实战之二：ProcessFunction类》](https://blog.csdn.net/boling_cavalry/article/details/106299035)\n29. [《Flink处理函数实战之三：KeyedProcessFunction类》](https://blog.csdn.net/boling_cavalry/article/details/106299167)\n30. [《Flink处理函数实战之四：窗口处理》](https://blog.csdn.net/boling_cavalry/article/details/106453229)\n31. [《Flink处理函数实战之五：CoProcessFunction(双流处理)》](https://blog.csdn.net/boling_cavalry/article/details/109614001)\n32. [《理解ProcessFunction的Timer逻辑》](https://xinchen.blog.csdn.net/article/details/109564999)\n\n## 双流处理实战特辑\n1. [《CoProcessFunction实战三部曲之一：基本功能》](https://xinchen.blog.csdn.net/article/details/109624375)\n2. [《CoProcessFunction实战三部曲之二：状态处理》](https://xinchen.blog.csdn.net/article/details/109629119)\n3. [《CoProcessFunction实战三部曲之三：定时器和侧输出》](https://xinchen.blog.csdn.net/article/details/109645214)\n\n## Spark\n1. [《部署spark2.2集群(standalone模式)》](https://blog.csdn.net/boling_cavalry/article/details/86747258)\n2. [《第一个spark应用开发详解(java版)》](https://blog.csdn.net/boling_cavalry/article/details/86776746)\n3. [《部署Spark2.2集群(on Yarn模式)》](https://blog.csdn.net/boling_cavalry/article/details/86795338)\n4. [《docker下，极速搭建spark集群(含hdfs集群)》](https://blog.csdn.net/boling_cavalry/article/details/86851069)\n5. [《spark实战之：分析维基百科网站统计数据(java版)》](https://blog.csdn.net/boling_cavalry/article/details/87241814)\n6. [《docker下的spark集群，调整参数榨干硬件》](https://blog.csdn.net/boling_cavalry/article/details/87438666)\n7. [《IDEA开发Spark应用实战(Scala)》](https://blog.csdn.net/boling_cavalry/article/details/87510822)\n8. [《查看Spark任务的详细信息》](https://blog.csdn.net/boling_cavalry/article/details/102291920)\n9. [《Mac部署spark2.4.4》](https://blog.csdn.net/boling_cavalry/article/details/102765992)\n\n## Kylin\n1. [《CDH+Kylin三部曲之一：准备工作》](https://xinchen.blog.csdn.net/article/details/105449630)\n2. [《CDH+Kylin三部曲之二：部署和设置》](https://xinchen.blog.csdn.net/article/details/105449952)\n3. [《CDH+Kylin三部曲之三：Kylin官方demo》](https://xinchen.blog.csdn.net/article/details/105450665)\n\n## HBase\n1. [《Docker下HBase学习，三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/78041775)\n2. [《Docker下HBase学习，三部曲之二：集群HBase搭建》](https://blog.csdn.net/boling_cavalry/article/details/78041811)\n3. [《Docker下HBase学习，三部曲之三：java开发》](https://blog.csdn.net/boling_cavalry/article/details/78156406)\n\n## Hive\n1. [《安装和体验hive》](https://blog.csdn.net/boling_cavalry/article/details/102310449)\n\n## Hadoop\n1. [《Linux部署hadoop2.7.7集群》](https://blog.csdn.net/boling_cavalry/article/details/86774385)\n2. [《Mac部署hadoop3(伪分布式)》](https://blog.csdn.net/boling_cavalry/article/details/102538585)\n\n## 数据集\n1. [《寻找海量数据集用于大数据开发实战(维基百科网站统计数据)》](https://blog.csdn.net/boling_cavalry/article/details/86894540)\n\n\n# 中间件\n\n## 配置中心\n1. [《Docker搭建disconf环境，三部曲之一：极速搭建disconf》](https://blog.csdn.net/boling_cavalry/article/details/71082610)\n2. [《Docker搭建disconf环境，三部曲之二：本地快速构建disconf镜像》](https://blog.csdn.net/boling_cavalry/article/details/71107498)\n3. [《Docker搭建disconf环境，三部曲之三：细说搭建过程》](https://blog.csdn.net/boling_cavalry/article/details/71120725)\n4. [《docker下使用disconf：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/71404395)\n5. [《docker下使用disconf：细说demo开发》](https://blog.csdn.net/boling_cavalry/article/details/71424124)\n\n## zookeeper\n1. [《基于spring boot框架访问zookeeper》](https://blog.csdn.net/boling_cavalry/article/details/69802622)\n\n## 缓存\n1. [《jedis使用入门（Docker环境下）》](https://blog.csdn.net/boling_cavalry/article/details/71440053)\n2. [《Docker下redis与springboot三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/78991422)\n3. [《Docker下redis与springboot三部曲之二：安装redis主从和哨兵》](https://blog.csdn.net/boling_cavalry/article/details/78995407)\n4. [《Docker下redis与springboot三部曲之三：springboot下访问redis哨兵》](https://blog.csdn.net/boling_cavalry/article/details/79041129)\n5. [《实战Redis序列化性能测试(Kryo和字符串)》](https://blog.csdn.net/boling_cavalry/article/details/80719683)\n\n## 注册中心\n\n### dubbo\n1. [《Docker下dubbo开发，三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/72303126)\n2. [《Docker下dubbo开发，三部曲之二：本地环境搭建》](https://blog.csdn.net/boling_cavalry/article/details/72460526)\n3. [《Docker下dubbo开发，三部曲之三：java开发》](https://blog.csdn.net/boling_cavalry/article/details/72789984)\n\n### nacos\n1. [《Docker下,两分钟极速体验Nacos》](https://blog.csdn.net/boling_cavalry/article/details/97617353)\n2. [《Docker下的Nacos环境开发》](https://blog.csdn.net/boling_cavalry/article/details/98328270)\n3. [《Docker下,两分钟极速体验Nacos配置中心》](https://blog.csdn.net/boling_cavalry/article/details/99708769)\n4. [《Docker下Nacos配置应用开发》](https://blog.csdn.net/boling_cavalry/article/details/100067833)\n5. [《Docker下Nacos持久化配置》](https://blog.csdn.net/boling_cavalry/article/details/100171289)\n\n### eureka\n1. [《Eureka的TimedSupervisorTask类（自动调节间隔的周期性任务）》](https://blog.csdn.net/boling_cavalry/article/details/82795825)\n2. [《实战监听Eureka client的缓存更新》](https://blog.csdn.net/boling_cavalry/article/details/82827802)\n3. [《Eureka的InstanceInfoReplicator类（服务注册辅助工具）》](https://blog.csdn.net/boling_cavalry/article/details/82909130)\n4. [《Eureka注册信息配置备忘》](https://blog.csdn.net/boling_cavalry/article/details/82927409)\n5. [《Wireshark抓包分析Eureka注册发现协议》](https://blog.csdn.net/boling_cavalry/article/details/82918227)\n6. [《Spring Cloud源码分析之Eureka篇第一章：准备工作》](https://blog.csdn.net/boling_cavalry/article/details/81809929)\n7. [《Spring Cloud源码分析之Eureka篇第二章：注册中心启动类上的注解EnableEurekaServer》](https://blog.csdn.net/boling_cavalry/article/details/81809860)\n8. [《Spring Cloud源码分析之Eureka篇第三章：EnableDiscoveryClient与EnableEurekaClient的区别(Edgware版本)》](https://blog.csdn.net/boling_cavalry/article/details/82668480)\n9. [《Spring Cloud源码分析之Eureka篇第四章：服务注册是如何发起的》](https://blog.csdn.net/boling_cavalry/article/details/82721583)\n10. [《Spring Cloud源码分析之Eureka篇第五章：更新服务列表》](https://blog.csdn.net/boling_cavalry/article/details/82813180)\n11. [《Spring Cloud源码分析之Eureka篇第六章：服务注册》](https://blog.csdn.net/boling_cavalry/article/details/82861618)\n12. [《Spring Cloud源码分析之Eureka篇第七章：续约》](https://blog.csdn.net/boling_cavalry/article/details/82915355)\n13. [《Spring Cloud源码分析之Eureka篇第八章：服务注册名称的来历》](https://blog.csdn.net/boling_cavalry/article/details/82930728)\n\n# 消息队列\n\n## kafka\n1. [《Docker下kafka学习，三部曲之一：极速体验kafka》](https://blog.csdn.net/boling_cavalry/article/details/71576775)\n2. [《Docker下kafka学习，三部曲之二：本地环境搭建》](https://blog.csdn.net/boling_cavalry/article/details/71601189)\n3. [《Docker下kafka学习，三部曲之三：java开发》](https://blog.csdn.net/boling_cavalry/article/details/71634631)\n4. [《Docker下的Kafka学习之一：制作集群用的镜像文件》](https://blog.csdn.net/boling_cavalry/article/details/78244943)\n5. [《Docker下的Kafka学习之二：搭建集群环境》](https://blog.csdn.net/boling_cavalry/article/details/78309050)\n6. [《Docker下的Kafka学习之三：集群环境下的java开发》](https://blog.csdn.net/boling_cavalry/article/details/78386451)\n7. [《kafka的Docker镜像使用说明(wurstmeister/kafka)》](https://blog.csdn.net/boling_cavalry/article/details/85395080)\n8. [《如何使用Docker内的kafka服务》](https://blog.csdn.net/boling_cavalry/article/details/85528519)\n9. [《K8S环境快速部署Kafka(K8S外部可访问)》](https://xinchen.blog.csdn.net/article/details/105466163)\n10. [《K8S的Kafka监控(Prometheus+Grafana)》](https://xinchen.blog.csdn.net/article/details/105466788)\n\n## RabbitMQ\n1. [《Docker下RabbitMQ四部曲之一：极速体验(单机和集群)》](https://blog.csdn.net/boling_cavalry/article/details/80212878)\n2. [《Docker下RabbitMQ四部曲之二：细说RabbitMQ镜像制作》](https://blog.csdn.net/boling_cavalry/article/details/80297358)\n3. [《Docker下RabbitMQ四部曲之三：细说java开发》](https://blog.csdn.net/boling_cavalry/article/details/80301169)\n4. [《Docker下RabbitMQ四部曲之四：高可用实战》](https://blog.csdn.net/boling_cavalry/article/details/80351491)\n5. [《Docker下RabbitMQ延时队列实战两部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/80630100)\n6. [《Docker下RabbitMQ延时队列实战两部曲之二：细说开发》](https://blog.csdn.net/boling_cavalry/article/details/80635050)\n\n# 数据库\n\n## MySQL\n1. [《让docker中的mysql启动时自动执行sql》](https://blog.csdn.net/boling_cavalry/article/details/71055159)\n2. [《Docker下，极速体验mongodb》](https://blog.csdn.net/boling_cavalry/article/details/78168085)\n3. [《制作mongodb的Docker镜像文件》](https://blog.csdn.net/boling_cavalry/article/details/78172113)\n4. [《Docker下，实战mongodb副本集（Replication）》](https://blog.csdn.net/boling_cavalry/article/details/78173636)\n5. [《Docker下安装Rockmongo，图形化操作mongodb》](https://blog.csdn.net/boling_cavalry/article/details/78234762)\n6. [《Java实战操作MongoDB集群（副本集）》](https://blog.csdn.net/boling_cavalry/article/details/78238163)\n7. [《Docker下的mysql设置字符集》](https://blog.csdn.net/boling_cavalry/article/details/79342494)\n8. [《Docker下手工配置MySQL主从》](https://blog.csdn.net/boling_cavalry/article/details/79751085)\n9. [《Docker下MySQL主从三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/79747488)\n10. [《Docker下MySQL主从三部曲之二：细说镜像制作》](https://blog.csdn.net/boling_cavalry/article/details/79775617)\n11. [《Docker下MySQL主从三部曲之三：binlog日志参数实战》](https://blog.csdn.net/boling_cavalry/article/details/79782008)\n12. [《关于InnoDB表数据和索引数据的存储》](https://blog.csdn.net/boling_cavalry/article/details/85172258)\n\n## ElasticSearch\n\n### ElasticSearch实战\n1. [《CentOS7搭建ELK-6.2.3版本》](https://blog.csdn.net/boling_cavalry/article/details/79836171)\n2. [《Docker下ELK三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/79950677)\n3. [《Docker下ELK三部曲之二：细说开发》](https://blog.csdn.net/boling_cavalry/article/details/79972444)\n4. [《Docker下ELK三部曲之三：K8S上的ELK和应用日志上报》](https://blog.csdn.net/boling_cavalry/article/details/80141800)\n5. [《Linux环境快速搭建elasticsearch6.5.4集群和Head插件》](https://blog.csdn.net/boling_cavalry/article/details/86358716)\n6. [《elasticsearch安装和使用ik分词器》](https://blog.csdn.net/boling_cavalry/article/details/86549043)\n7. [《自己动手制作elasticsearch-head的Docker镜像》](https://blog.csdn.net/boling_cavalry/article/details/86663168)\n8. [《自己动手制作elasticsearch的ik分词器的Docker镜像》](https://blog.csdn.net/boling_cavalry/article/details/86668180)\n9. [《docker下，一行命令搭建elasticsearch6.5.0集群(带head插件和ik分词器)》](https://blog.csdn.net/boling_cavalry/article/details/86669450)\n10. [《Elasticsearch6.1.2源码下载和编译构建》](https://blog.csdn.net/boling_cavalry/article/details/89298234)\n11. [《IntelliJ IDEA远程调试Elasticsearch6.1.2》](https://blog.csdn.net/boling_cavalry/article/details/89417650)\n12. [《极速导入elasticsearch测试数据》](https://blog.csdn.net/boling_cavalry/article/details/89435566)\n\n### ElasticSearch基本功专题\n1. [《elasticsearch实战三部曲之一：索引操作》](https://blog.csdn.net/boling_cavalry/article/details/86361841)\n2. [《elasticsearch实战三部曲之二：文档操作》](https://blog.csdn.net/boling_cavalry/article/details/86379882)\n3[《elasticsearch实战三部曲之三：搜索操作》](https://blog.csdn.net/boling_cavalry/article/details/86413235)\n4. [《Elasticsearch聚合学习之一：基本操作》](https://blog.csdn.net/boling_cavalry/article/details/89735952)\n5. [《Elasticsearch聚合学习之二：区间聚合》](https://blog.csdn.net/boling_cavalry/article/details/89763684)\n6. [《Elasticsearch聚合学习之三：范围限定》](https://blog.csdn.net/boling_cavalry/article/details/89785223)\n7. [《Elasticsearch聚合学习之四：结果排序》](https://blog.csdn.net/boling_cavalry/article/details/89812169)\n8. [《Elasticsearch聚合学习之五：排序结果不准的问题分析》](https://blog.csdn.net/boling_cavalry/article/details/90319399)\n9. [《Elasticsearch聚合的嵌套桶如何排序》](https://blog.csdn.net/boling_cavalry/article/details/89816240)\n10. [《理解elasticsearch的post_filter》](https://blog.csdn.net/boling_cavalry/article/details/89801825)\n11. [《elasticsearch的字符串动态映射》](https://blog.csdn.net/boling_cavalry/article/details/89061560)\n12. [《实战Elasticsearch6的join类型》](https://blog.csdn.net/boling_cavalry/article/details/89067738)\n\n# 工具和技巧\n1. [《根据java代码生成UML图》](https://blog.csdn.net/boling_cavalry/article/details/72033221)\n2. [《设置Intellij idea和maven，支持lambda表达式》](https://blog.csdn.net/boling_cavalry/article/details/72853503)\n3. [《安装Genymotion模拟器运行Android studio的工程》](https://blog.csdn.net/boling_cavalry/article/details/73287096)\n4. [《Intellij idea远程debug连接tomcat，实现单步调试》](https://blog.csdn.net/boling_cavalry/article/details/73384036)\n5. [《docker下载镜像慢怎么办？daocloud加速器来帮你》](https://blog.csdn.net/boling_cavalry/article/details/77833069)\n6. [《Docker下的mysql设置字符集》](https://blog.csdn.net/boling_cavalry/article/details/79342494)\n7. [《用IntelliJ IDEA看Java类图》](https://blog.csdn.net/boling_cavalry/article/details/79418823)\n8. [《Wireshark的HTTP请求包和响应包如何对应》](https://blog.csdn.net/boling_cavalry/article/details/82925463)\n9. [《Wireshark抓包分析Eureka注册发现协议》](https://blog.csdn.net/boling_cavalry/article/details/82918227)\n10. [《免费申请和使用IntelliJ IDEA商业版License指南》](https://blog.csdn.net/boling_cavalry/article/details/100014835)\n11. [《发送kafka消息的shell脚本》](https://blog.csdn.net/boling_cavalry/article/details/104736677)\n12. [《github搜索技巧小结》](https://xinchen.blog.csdn.net/article/details/114737069)\n\n# 问题处理\n1. [《dubbo服务提供者在tomcat启动失败的问题》](https://blog.csdn.net/boling_cavalry/article/details/72188135)\n2. [《Docker下部署dubbo，消费者应用无法使用link参数的问题》](https://blog.csdn.net/boling_cavalry/article/details/72388834)\n3. [《adb shell无法连接到Genymotion上的虚拟设备的问题》](https://blog.csdn.net/boling_cavalry/article/details/73301843)\n4. [《spring+mybatis启动NoClassDefFoundError异常分析三部曲之一：稳定重现问题》](https://blog.csdn.net/boling_cavalry/article/details/73071020)\n5. [《spring+mybatis启动NoClassDefFoundError异常分析三部曲之二：定位错误》](https://blog.csdn.net/boling_cavalry/article/details/73442311)\n6. [《spring+mybatis启动NoClassDefFoundError异常分析三部曲之三：改spring源码，取详细错误》](https://blog.csdn.net/boling_cavalry/article/details/73759475)\n7. [《docker-compose中启动镜像失败的问题》](https://blog.csdn.net/boling_cavalry/article/details/79050451)\n8. [《Docker下No module named 'pymongo'问题处理》](https://blog.csdn.net/boling_cavalry/article/details/79169560)\n9. [《springboot启动失败的问题（'hibernate.dialect' not set）》](https://blog.csdn.net/boling_cavalry/article/details/79342319)\n10. [《springboot的JPA在Mysql8新增记录失败的问题》](https://blog.csdn.net/boling_cavalry/article/details/79342572)\n11. [《Win10环境编译spring-framework4.1.9版本，报错\"Failed to capture snapshot of input files for task 'distZip'\"》](https://blog.csdn.net/boling_cavalry/article/details/80796059)\n12. [《maven编译遇到\"编码GBK的不可映射字符\"警告的处理》](https://blog.csdn.net/boling_cavalry/article/details/83036666)\n13. [《 docker问题备忘：\"rpc error: code = 2 desc = containerd: container not found\"》](https://blog.csdn.net/boling_cavalry/article/details/88817244)\n14. [《使用fabric8-maven-plugin插件的错误处理(No plugin found for prefix 'fabric8')》](https://blog.csdn.net/boling_cavalry/article/details/91132345)\n15. [《Linux下minikube启动失败(It seems like the kubelet isn't running or healthy)》](https://blog.csdn.net/boling_cavalry/article/details/91306095)\n16. [《Ubuntu18重启docker服务失败问题备忘》](https://blog.csdn.net/boling_cavalry/article/details/100059053)\n17. [《hadoop2.7集群初始化之后没有DataNode的问题》](https://blog.csdn.net/boling_cavalry/article/details/102764540)\n\n# DevOps\n\n## ansible\n1. [《ansible2.4安装和体验》](https://xinchen.blog.csdn.net/article/details/105342744)\n2. [《超简单的CDH6部署和体验(单机版)》](https://xinchen.blog.csdn.net/article/details/105356266)\n3. [《Flink on Yarn三部曲之一：准备工作》](https://xinchen.blog.csdn.net/article/details/105356306)\n4. [《Flink on Yarn三部曲之二：部署和设置》](https://xinchen.blog.csdn.net/article/details/105356347)\n5. [《Flink on Yarn三部曲之三：提交Flink任务》](https://xinchen.blog.csdn.net/article/details/105356399)\n6. [《CDH+Kylin三部曲之一：准备工作》](https://xinchen.blog.csdn.net/article/details/105449630)\n7. [《CDH+Kylin三部曲之二：部署和设置》](https://xinchen.blog.csdn.net/article/details/105449952)\n8. [《CDH+Kylin三部曲之三：Kylin官方demo》](https://xinchen.blog.csdn.net/article/details/105450665)\n9. [《ansible快速部署cassandra3集群》](https://blog.csdn.net/boling_cavalry/article/details/105602584)\n\n## Maven\n1. [《maven构建docker镜像三部曲之一：准备环境》](https://blog.csdn.net/boling_cavalry/article/details/78869466)\n2. [《maven构建docker镜像三部曲之二：编码和构建镜像》](https://blog.csdn.net/boling_cavalry/article/details/78872020)\n3. [《maven构建docker镜像三部曲之三：推送到远程仓库(内网和阿里云)》](https://blog.csdn.net/boling_cavalry/article/details/78934391)\n4. [《docker下的Jenkins安装和体验》](https://blog.csdn.net/boling_cavalry/article/details/78942408)\n5. [《实战maven私有仓库三部曲之一：搭建和使用》](https://blog.csdn.net/boling_cavalry/article/details/79059021)\n6. [《实战maven私有仓库三部曲之二：上传到私有仓库》](https://blog.csdn.net/boling_cavalry/article/details/79070744)\n7. [《实战maven私有仓库三部曲之三：Docker下搭建maven私有仓库》](https://blog.csdn.net/boling_cavalry/article/details/79111740)\n8. [《实战：向GitHub提交代码时触发Jenkins自动构建》](https://blog.csdn.net/boling_cavalry/article/details/78943061)\n9. [《修改gradle脚本，加速spring4.1源码编译构建速度》](https://blog.csdn.net/boling_cavalry/article/details/80873343)\n10. [《Docker与Jib(maven插件版)实战》](https://blog.csdn.net/boling_cavalry/article/details/94355659)\n12. [《Jib使用小结(Maven插件版)》](https://blog.csdn.net/boling_cavalry/article/details/100179709)\n13. [《Jib构建镜像问题从定位到深入分析》](https://blog.csdn.net/boling_cavalry/article/details/101606958)\n14. [《kubernetes下的jenkins如何设置maven》](https://blog.csdn.net/boling_cavalry/article/details/104849839)\n15. [《kubernetes下jenkins实战maven项目编译构建》](https://blog.csdn.net/boling_cavalry/article/details/104875452)\n\n## 持续构建\n1. [《通过http请求启动jenkins任务》](https://blog.csdn.net/boling_cavalry/article/details/85373901)\n2. [《Jenkins流水线(pipeline)实战之：从部署到体验》](https://blog.csdn.net/boling_cavalry/article/details/100848333)\n3. [《让Jenkins执行GitHub上的pipeline脚本》](https://blog.csdn.net/boling_cavalry/article/details/100857361)\n4. [《Jenkins把GitHub项目做成Docker镜像》](https://blog.csdn.net/boling_cavalry/article/details/101099617)\n5. [《快速搭建Jenkins集群》](https://blog.csdn.net/boling_cavalry/article/details/103097240)\n6. [《Jenkins集群下的pipeline实战》](https://blog.csdn.net/boling_cavalry/article/details/103104441)\n7. [《kubernetes下的jenkins如何设置maven》](https://blog.csdn.net/boling_cavalry/article/details/104849839)\n8. [《K8S环境的Jenkin性能问题处理》](https://blog.csdn.net/boling_cavalry/article/details/105005245)\n9. [《K8S环境的Jenkin性能问题处理续篇(任务Pod设置)》](https://xinchen.blog.csdn.net/article/details/105181474)\n10. [《远程触发Jenkins的Pipeline任务》](https://xinchen.blog.csdn.net/article/details/105189564)\n11. [《远程触发Jenkins的Pipeline任务的并发问题处理》](https://xinchen.blog.csdn.net/article/details/105340243)\n12. [《GitLab Runner部署(kubernetes环境)》](https://blog.csdn.net/boling_cavalry/article/details/106991576)\n13. [《GitLab CI构建SpringBoot-2.3应用》](https://blog.csdn.net/boling_cavalry/article/details/106991691)\n14. [《Gitlab Runner的分布式缓存实战》](https://blog.csdn.net/boling_cavalry/article/details/107374730)\n15. [《用GitHub Actions制作Docker镜像》](https://xinchen.blog.csdn.net/article/details/115476859)\n\n## promethus\n1. [《Docker下Prometheus和Grafana三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/88367137)\n2. [《Docker下Prometheus和Grafana三部曲之二：细说Docker编排》](https://blog.csdn.net/boling_cavalry/article/details/88374848)\n3. [《Docker下Prometheus和Grafana三部曲之三：自定义监控项开发和配置》](https://blog.csdn.net/boling_cavalry/article/details/88375734)\n4. [《kubernetes1.15极速部署prometheus和grafana》](https://xinchen.blog.csdn.net/article/details/105156849)\n5. [《K8S的Kafka监控(Prometheus+Grafana)》](https://xinchen.blog.csdn.net/article/details/105466788)\n\n## zabbix\n1. [《Docker下实战zabbix三部曲之一：极速体验》](https://blog.csdn.net/boling_cavalry/article/details/76857936)\n2. [《Docker下实战zabbix三部曲之二：监控其他机器》](https://blog.csdn.net/boling_cavalry/article/details/77095153)\n3. [《Docker下实战zabbix三部曲之三：自定义监控项》](https://blog.csdn.net/boling_cavalry/article/details/77410178)\n4. [《Docker下，极速体验编译pinpoint1.6.x分支》](https://xinchen.blog.csdn.net/article/details/78440890)\n\n## pinpoint\n1. [《把pinpoint编译环境做成Docker镜像文件》](https://blog.csdn.net/boling_cavalry/article/details/78447310)\n2. [《Docker下，极速体验pinpoint1.6.3》](https://blog.csdn.net/boling_cavalry/article/details/78447314)\n3. [《Docker下，pinpoint环境搭建》](https://blog.csdn.net/boling_cavalry/article/details/78448564)\n4. [《pinpoint插件开发之一：牛刀小试，调整gson插件》](https://blog.csdn.net/boling_cavalry/article/details/78495628)\n5. [《pinpoint插件开发之二：从零开始新建一个插件》](https://blog.csdn.net/boling_cavalry/article/details/78568073)\n6. [《分布式系统快速接入pinpoint1.8.3指南》](https://blog.csdn.net/boling_cavalry/article/details/102011341)\n\n## jaeger\n1. [《分布式调用链跟踪工具Jaeger？两分钟极速体验》](https://xinchen.blog.csdn.net/article/details/120243299)\n2. [《Jaeger开发入门(java版)》](https://xinchen.blog.csdn.net/article/details/120360141)\n3. [《Java应用日志如何与Jaeger的trace关联》](https://xinchen.blog.csdn.net/article/details/120389573)\n4. [《Jaeger的客户端采样配置》](https://xinchen.blog.csdn.net/article/details/120395628)\n5. [《极简！一个注解就能创建Jaeger的Span》](https://xinchen.blog.csdn.net/article/details/120475233)\n6. [《Jaeger知识点补充》](https://xinchen.blog.csdn.net/article/details/120394912)\n\n# 算法\n1. [《LeetCode第三题(Longest Substring Without Repeating Characters)三部曲之一：解题思路》](https://blog.csdn.net/boling_cavalry/article/details/86563586)\n2. [《LeetCode第三题(Longest Substring Without Repeating Characters)三部曲之二：编码实现》](https://blog.csdn.net/boling_cavalry/article/details/86654969)\n3. [《LeetCode第三题(Longest Substring Without Repeating Characters)三部曲之三：两次优化》](https://blog.csdn.net/boling_cavalry/article/details/86655675)\n4. [《LeetCode46全排列(回溯入门)》](https://xinchen.blog.csdn.net/article/details/125966575)\n5. [《LeetCode952三部曲之一：解题思路和初级解法(137ms，超39%)》](https://xinchen.blog.csdn.net/article/details/126070288)\n6. [《LeetCode952三部曲之二：小幅度优化(137ms -＞ 122ms，超39% -＞ 超51%)》](https://xinchen.blog.csdn.net/article/details/126090112)\n7. [《LeetCode952三部曲之三：再次优化(122ms -＞ 96ms，超51% -＞ 超91%)》](https://xinchen.blog.csdn.net/article/details/126215652)\n8. [《LeetCode买卖股票之一：基本套路(122)》](https://xinchen.blog.csdn.net/article/details/126558167)\n9. [《LeetCode297：hard级别中最简单的存在，java版，用时击败98%，内存击败百分之九十九》](https://xinchen.blog.csdn.net/article/details/126693144)\n10. [《LeetCode279:完全平方数，动态规划解法超过46%，作弊解法却超过97%》](https://xinchen.blog.csdn.net/article/details/126922180)\n11. [《LeetCode155:最小栈，最简单的中等难度题，时间击败100%，内存也低于官方》](https://xinchen.blog.csdn.net/article/details/127042047)\n12. [《LeetCode98：验证二叉搜索树，居然有这么简单的中等难度，白捡(用时击败100%)》](https://xinchen.blog.csdn.net/article/details/127145854)\n\n\n\n# Linux\n1. [《Ubuntu16环境安装和使用NFS》](https://blog.csdn.net/boling_cavalry/article/details/79498346)\n2. [《CentOS7安装Nginx1.10.1》](https://blog.csdn.net/boling_cavalry/article/details/79834850)\n3. [《CentOS7安装JDK8》](https://blog.csdn.net/boling_cavalry/article/details/79840049)\n4. [《Ubuntu下安装OpenJDK10》](https://blog.csdn.net/boling_cavalry/article/details/83213608)\n5. [《Ubuntu环境下载OpenJDK11源码》](https://blog.csdn.net/boling_cavalry/article/details/83240035)\n6. [《Ubuntu16安装nodejs10》](https://blog.csdn.net/boling_cavalry/article/details/86354385)\n7. [《Linux服务器端网络抓包和分析实战》](https://blog.csdn.net/boling_cavalry/article/details/86771775)\n8. [《Linux配置SSH免密码登录(非root账号)》](https://blog.csdn.net/boling_cavalry/article/details/86772345)\n9. [《CentOS7安装python3和pip3》](https://blog.csdn.net/boling_cavalry/article/details/96572311)\n\n# Mac\n1. [《Mac下vagrant从安装到体验》](https://blog.csdn.net/boling_cavalry/article/details/99702719)\n2. [《Vagrant定制个性化CentOS7模板》](https://blog.csdn.net/boling_cavalry/article/details/102240871)\n3. [《Java程序员的MacBookPro(14寸M1)配置备忘录》](https://xinchen.blog.csdn.net/article/details/124139180)\n\n# Windows\n1. [《win11安装ubuntu(by wsl2)》](https://xinchen.blog.csdn.net/article/details/126312959)\n\n# golang\n1. [《Ubuntu16安装Go语言环境》](https://blog.csdn.net/boling_cavalry/article/details/82904868)\n2. [《golang实战之flag包》](https://blog.csdn.net/boling_cavalry/article/details/87901677)\n3. [《用golang官方Docker镜像运行项目》](https://blog.csdn.net/boling_cavalry/article/details/87904485)\n4. [《vim设置go语法高亮》](https://blog.csdn.net/boling_cavalry/article/details/88598828)\n5. [云端golang开发，无需本地配置，能上网就能开发和运行](https://xinchen.blog.csdn.net/article/details/128879768)\n6. [Go语言基准测试(benchmark)三部曲之一：基础篇](https://xinchen.blog.csdn.net/article/details/128986489)\n7. [Go语言基准测试(benchmark)三部曲之二：内存篇](https://xinchen.blog.csdn.net/article/details/128997452)\n\n## gRPC特辑\n1. [《gRPC学习之一：在CentOS7部署和设置GO》](https://xinchen.blog.csdn.net/article/details/110790538)\n2. [《gRPC学习之二：GO的gRPC开发环境准备》](https://xinchen.blog.csdn.net/article/details/111066105)\n3. [《gRPC学习之三：初试GO版gRPC开发》](https://xinchen.blog.csdn.net/article/details/111086114)\n4. [《gRPC学习之四：实战四类服务方法》](https://xinchen.blog.csdn.net/article/details/111144884)\n5. [《gRPC学习之五：gRPC-Gateway实战》](https://xinchen.blog.csdn.net/article/details/111399854)\n6. [《gRPC学习之六：gRPC-Gateway集成swagger》](https://xinchen.blog.csdn.net/article/details/111406857)\n\n# 机器学习\n1. [《机器学习的开发环境准备》](https://blog.csdn.net/boling_cavalry/article/details/96628350)\n2. [《Docker下，五分钟极速体验机器学习》](https://blog.csdn.net/boling_cavalry/article/details/96718499)\n3. [《来自Java程序员的Python新手入门小结》](https://xinchen.blog.csdn.net/article/details/120575494)\n4. [《NumPy学习笔记》](https://xinchen.blog.csdn.net/article/details/120608660)\n5. [《Ubuntu16安装Nvidia驱动(GTX1060显卡)》](https://xinchen.blog.csdn.net/article/details/120633388)\n6. [《Anaconda3+CUDA10.1+CUDNN7.6+TensorFlow2.6安装（Ubuntu16）》](https://xinchen.blog.csdn.net/article/details/120639465)\n\n# 深度学习\n\n## DL4J实战特辑\n1. [《DL4J实战之一：准备》](https://blog.csdn.net/boling_cavalry/article/details/117898354)\n2. [《DL4J实战之二：鸢尾花分类》](https://blog.csdn.net/boling_cavalry/article/details/117905798)\n3. [《DL4J实战之三：经典卷积实例(LeNet-5)》](https://blog.csdn.net/boling_cavalry/article/details/118239403)\n4. [《DL4J实战之四：经典卷积实例(GPU版本)》](https://blog.csdn.net/boling_cavalry/article/details/118240038)\n5. [《DL4J实战之五：矩阵操作基本功》](https://blog.csdn.net/boling_cavalry/article/details/118442820)\n6. [《DL4J实战之六：图形化展示训练过程》](https://blog.csdn.net/boling_cavalry/article/details/118593750)\n\n## 深度学习工程化\n1. [《纯净Ubuntu16安装CUDA(9.1)和cuDNN》](https://blog.csdn.net/boling_cavalry/article/details/118065868)\n2. [《三分钟体验：SpringBoot用深度学习模型识别数字》](https://blog.csdn.net/boling_cavalry/article/details/118290933)\n3. [《SpringBoot用深度学习模型识别数字：开发详解》](https://blog.csdn.net/boling_cavalry/article/details/118353259)\n4. [《三分钟极速体验：Java版人脸检测》](https://blog.csdn.net/boling_cavalry/article/details/118862001)\n5. [《Java版人脸检测详解上篇：运行环境的Docker镜像(CentOS+JDK+OpenCV)》](https://blog.csdn.net/boling_cavalry/article/details/118876299)\n6. [《Java版人脸检测详解下篇：编码》](https://blog.csdn.net/boling_cavalry/article/details/118970439)\n7. [《三分钟：极速体验JAVA版目标检测(YOLO4)》](https://xinchen.blog.csdn.net/article/details/120819464)\n8. [《制作JavaCV应用依赖的基础Docker镜像(CentOS7+JDK8+OpenCV4)》](https://xinchen.blog.csdn.net/article/details/120926346)\n9. [《超详细的编码实战，让你的springboot应用识别图片中的行人、汽车、狗子、喵星人（JavaCV+YOLO4）》](https://xinchen.blog.csdn.net/article/details/120929514)\n\n# 多媒体\n## kurento\n1. [《Kurento实战之一：KMS部署和体验》](https://xinchen.blog.csdn.net/article/details/112070074)\n2. [《Kurento实战之二：快速部署和体验》](https://xinchen.blog.csdn.net/article/details/112385575)\n3. [《Kurento实战之三：知识点小导游》](https://xinchen.blog.csdn.net/article/details/112415314)\n4. [《Kurento实战之四：应用开发指南》](https://xinchen.blog.csdn.net/article/details/112504048)\n5. [《微信小程序+腾讯云直播的实时音视频实战笔记》](https://blog.csdn.net/boling_cavalry/article/details/116855410)\n6. [《Kurento实战之五：媒体播放》](https://blog.csdn.net/boling_cavalry/article/details/118055902)\n7. [《Kurento实战之六：云端录制》](https://blog.csdn.net/boling_cavalry/article/details/118065861)\n\n## JavaCV特辑\n1. [《JavaCV推流实战(MP4文件)》](https://xinchen.blog.csdn.net/article/details/121434969)\n2. [《JavaCV的摄像头实战之一：基础》](https://xinchen.blog.csdn.net/article/details/121572093)\n3. [《JavaCV的摄像头实战之二：本地窗口预览》](https://xinchen.blog.csdn.net/article/details/121587043)\n4. [《JavaCV的摄像头实战之三：保存为mp4文件》](https://xinchen.blog.csdn.net/article/details/121597278)\n5. [《JavaCV的摄像头实战之四：抓图》](https://xinchen.blog.csdn.net/article/details/121624255)\n6. [《JavaCV的摄像头实战之五：推流》](https://xinchen.blog.csdn.net/article/details/121647316)\n7. [《JavaCV的摄像头实战之六：保存为mp4文件(有声音)》](https://xinchen.blog.csdn.net/article/details/121713539)\n8. [《JavaCV的摄像头实战之七：推流(带声音)》](https://xinchen.blog.csdn.net/article/details/121713559)\n9. [《JavaCV的摄像头实战之八：人脸检测》](https://xinchen.blog.csdn.net/article/details/121730985)\n10. [《JavaCV人脸识别三部曲之一：视频中的人脸保存为图片》](https://xinchen.blog.csdn.net/article/details/122008998)\n11. [《JavaCV人脸识别三部曲之二：训练》](https://xinchen.blog.csdn.net/article/details/122016154)\n12. [《JavaCV人脸识别三部曲之三：识别和预览》](https://xinchen.blog.csdn.net/article/details/122021850)\n13. [《JavaCV的摄像头实战之十二：性别检测》](https://xinchen.blog.csdn.net/article/details/122098821)\n14. [《JavaCV的摄像头实战之十三：年龄检测》](https://xinchen.blog.csdn.net/article/details/122151728)\n15. [《最简单的人脸检测（免费调用百度AI开放平台接口）》](https://xinchen.blog.csdn.net/article/details/122285751)\n16. [《JavaCV的摄像头实战之十四：口罩检测》](https://xinchen.blog.csdn.net/article/details/122375869)\n17. [《Java版人脸跟踪三部曲之一：极速体验》](https://xinchen.blog.csdn.net/article/details/122391898)\n18. [《Java版人脸跟踪三部曲之二：开发设计》](https://xinchen.blog.csdn.net/article/details/122528833)\n19. [《Java版人脸跟踪三部曲之三：编码实战》](https://xinchen.blog.csdn.net/article/details/122678517)\n\n# 硬件\n\n## 树莓派\n1. [《树莓派3B安装64位操作系统(树莓派无需连接显示器键盘鼠标)》](https://blog.csdn.net/boling_cavalry/article/details/80716098)\n2. [《64位树莓派上安装和配置golang1.9.2》](https://blog.csdn.net/boling_cavalry/article/details/84501381)\n3. [《树莓派3B搭建Flink集群》](https://blog.csdn.net/boling_cavalry/article/details/85222494)\n4. [《树莓派部署Elasticsearch6集群》](https://blog.csdn.net/boling_cavalry/article/details/89440971)\n5. [《树莓派4B安装64位Linux(不用显示器键盘鼠标)》](https://blog.csdn.net/boling_cavalry/article/details/100594275)\n6. [《树莓派4B安装docker-compose(64位Linux)》](https://blog.csdn.net/boling_cavalry/article/details/101105693)\n\n## 群晖\n1. [《群晖DS218+做maven私服(nexus3)》](https://xinchen.blog.csdn.net/article/details/105458466)\n2. [《群晖DS218+部署mysql》](https://xinchen.blog.csdn.net/article/details/105460567)\n3. [《群晖DS218+部署kafka》](https://xinchen.blog.csdn.net/article/details/105462692)\n4. [《K8S使用群晖DS218+的NFS》](https://xinchen.blog.csdn.net/article/details/105465233)\n5. [《群晖DS218+部署GitLab》](https://blog.csdn.net/boling_cavalry/article/details/106973743)\n\n### 标记(改过内容)\n[《把pinpoint编译环境做成Docker镜像文件》](https://blog.csdn.net/boling_cavalry/article/details/78447310)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzq2599%2Fblog_demos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzq2599%2Fblog_demos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzq2599%2Fblog_demos/lists"}