目录

后端技术笔记汇总

100_计科基础

数据结构与算法

基础

  1. 0.程序员需要掌握哪些算法

线性表

链表

  1. 3.单向链表
  2. 4.双向链表
  3. 31.跳表

散列表

  1. 30.哈希表
  2. 30.Hash算法
  3. 80.bitmap

  1. 40.二叉树
  2. 41.二叉树的顺序存储
  3. 42.线索二叉树
  4. 43.二叉排序树
  5. 44.AVL树(平衡二叉搜索树)
  6. 45.红黑树
  7. 45.B树、B+树、B*树
  8. 46.2-3树与红黑树
  9. 47.2-3-4树与红黑树
  10. 51.赫夫曼树

  1. 60.图
  2. 62.并查集(Disjoint-Set)
  3. 61.拓补排序
  4. 74.Prime算法
  5. 75.Kruskal算法
  6. 76.Dijkstra(迪杰斯特拉)算法
  7. 77.Floyd(弗洛伊德)算法

基本算法思想

  1. 6.递归
  2. 7.回溯
  3. 70.分治算法
  4. 71.动态规划
  5. 73.贪心算法

搜索

  1. 70.DFS和BFS

查找

  1. 20.二分查找
  2. 21.插值查找
  3. 22.斐波拉契查找

字符串匹配

  1. 72.KMP

排序算法

  1. 8.排序算法基础

应用

  1. 八皇后
  2. 单向链表逆序
  3. 汉诺塔
  4. 赫夫曼编码
  5. 迷宫路径(回溯+递归)
  6. 迷宫最短路径
  7. 前缀_中缀_后缀表达式
  8. 栈实现计算器(中缀表达式)
  9. 文件压缩与解压(赫夫曼编码)
  10. 约瑟夫问题
  11. 最大子序和
  12. 最短路径(图的应用)
  13. 最小生成树(图的应用)
  14. 最优装配
  15. 最长上升子序列(LIS)
  16. DAG最短路
  17. 01背包

leetcode

  1. 62_不同路径
  2. 64_最小路径和
  3. 72_编辑距离
  4. 718_最长重复子数组
  5. 887_鸡蛋掉落
  6. 1143_最长公共子序列

组成原理

  1. 1_计算机发展历程
  2. 2_计算机系统层次结构
  3. 3_计算机性能指标
  4. 4_数制与编码
  5. 8_存储器的简单模型及寻址概念
  6. 计算机缓存Cache以及Cache Line详解
  7. Cache一致性协议MESI
  8. Arm架构 计算机结构、南桥、北桥
  9. 寄存器
  10. 总线
  11. DMA总结
  12. 顺序和随机

操作系统

  1. 1. 操作系统的基本概念
  2. 2. 操作系统的发展与分类
  3. 3. 操作系统的运行机制与体系结构
  4. 4. 进程与线程
  5. 5. 处理机调度
  6. 6. 进程同步
  7. 7. 死锁
  8. 8. 内存管理
  9. 9. 虚拟内存管理
  10. 10. 文件系统基础
  11. 11. 磁盘组织与管理
  12. 12. 输入输出(IO)管理
  13. 中断
  14. PageCache
  15. 共享内存与内存映射

网络通信

  1. 网关、路由器、三层交换机
  2. 网络编程基础
  3. cdn
  4. cookie、session、token、jwt
  5. IO模型详解
  6. Socket、端口、进程
  7. SSL-TLS
  8. TCP-IP协议栈
  9. TCP粘包拆包

200_编程语言

c

  1. 内嵌汇编
  2. c中的输入输出缓冲区

java

jvm

  1. 1_JVM与Java体系结构
  2. 2_类加载子系统
  3. 3_运行时数据区概述及线程
  4. 4_PC寄存器
  5. 5_虚拟机栈
  6. 6_本地方法接口
  7. 7_本地方法栈
  8. 8_堆
  9. 9_方法区
  10. 10_对象的实例化内存布局及访问定位
  11. 11_直接内存
  12. 12_执行引擎
  13. 13_StringTable
  14. 14_垃圾回收相关算法
  15. 15_垃圾回收相关概念
  16. 16_垃圾回收器
  17. jvm堆和栈的区别
  18. 堆分配的内存空间是否连续
  19. 详解符号引用转直接引用
  20. 压缩指针
  21. jvm中OOP-KLASS模型
  22. 分派
  23. 以JDBC为例谈双亲委派模型的破坏
  24. ClassLoader
  25. jvm性能调优工具
  26. jvm指令集

java基础

  1. 彻底搞懂String.intern()
  2. 池技术
  3. 反射
  4. 泛型
  5. 访问控制
  6. 集合
  7. 枚举
  8. 内部类
  9. 内省
  10. 深浅拷贝
  11. 序列化和反序列化
  12. 异常
  13. 值传递or引用传递
  14. 注解
  15. 注解底层原理
  16. 字节码图解i++
  17. HashMap为什么要重新实现hash
  18. IO框架
  19. IO使用
  20. java_record
  21. java位运算
  22. jdbc和jdbc驱动
  23. jdk15新特性
  24. SimpleDateFormat线程不安全及解决办法
  25. SPI机制

Java8实战

  1. 1_为什么要关心Java8
  2. 2_通过行为参数化传递代码
  3. 3_Lambda表达式
  4. 4_引入流
  5. 5_使用流
  6. 6_用流收集数据
  7. 7_并行数据处理与性能
  8. 8_重构、测试和调试
  9. 9_默认方法
  10. 10_用Optional取代null
  11. 11_CompletableFuture_组合式异步编程
  12. 12_新的日期和时间API
  13. 13_函数式的思考
  14. 15_面向对象和函数式编程的混合_Java8和Scala的比较
  15. 16_结论以及Java的未来
  16. 17_附录A_其他语言特性的更新
  17. 18_附录B_类库的更新
  18. 19_附录C_如何以并发方式在同一个流上执行多种操作
  19. 20_附录D_Lambda表达式和JVM字节码

Netty实战

  1. 1_Netty_异步和事件驱动
  2. 2_第一款Netty应用程序
  3. 3_Netty的组件和设计
  4. 4_传输
  5. 5_ByteBuf
  6. 6_ChannelHandler和ChannelPipeline
  7. 7_EventLoop和线程模型
  8. 8_引导
  9. 9_单元测试
  10. 10_编解码器
  11. 11_预置的ChannelHandler和编解码器
  12. 12_WebSocket
  13. 13_使用UDP广播事件
  14. 14_案例研究,第一部分
  15. 15_案例研究,第二部分

网络编程

  1. 异步事件驱动机制详解
  2. Zero-Copy
  3. rmi、rpc、netty
  4. Netty源码分析之EventLoop
  5. NIO简述
  6. NIO详解
  7. NIO多人聊天室

并发编程

  1. 并发容器
  2. 多线程Callable接口
  3. 活锁
  4. 计划任务
  5. 惊群效应
  6. 聊聊你知道的锁
  7. 内存屏障
  8. 锁池和等待池
  9. 锁接口和类
  10. 线程间的通信
  11. 通信工具类
  12. 阻塞队列
  13. 线程池
  14. 线程组
  15. 重排序
  16. 自旋锁、排队自旋锁、MCS锁、CLH锁
  17. AQS
  18. cas
  19. Condition
  20. CopyOnWrite容器
  21. ForkJoin框架
  22. happends-before
  23. Java内存模型JMM
  24. LockSupport
  25. synchronized
  26. Thread
  27. ThreadLocal
  28. unsafe
  29. volatile

300_DevOps

  1. DevOps介绍

docker

  1. centos基础镜像更换yum源
  2. docker-compose_quickstart
  3. docker-compose常用命令
  4. docker-mac下清除日志
  5. docker_quickstart
  6. docker、docker-compose、docker swarm和k8s的区别
  7. docker常用软件安装
  8. docker使用篇
  9. docker自定义网络模式
  10. dockerfile文件详解

git

  1. git

idea

  1. 安装idea2020.2.3
  2. idea
  3. idea插件
  4. idea支持热部署
  5. IntelliJ中基于文本的HTTP客户端

linux

  1. 包管理工具
  2. 重定向
  3. centos使用篇
  4. crond
  5. curl命令详解
  6. linux常用操作命令
  7. linux命令行快捷键
  8. linux文件和目录树结构
  9. linux用户和用户组
  10. nohup详解
  11. shell编程-空格的使用方法
  12. shell编程-引号
  13. shell编程
  14. vim编辑器

mac

  1. mac

maven

  1. maven_quickstart
  2. maven常用插件介绍
  3. maven使用记录

400_数据库

mysql

  1. 1_mysql架构介绍
  2. 2_七种JOIN
  3. 3_索引
  4. 4_最左匹配
  5. 5_性能分析
  6. 6_索引优化
  7. 7_Mysql_Join算法与调优
  8. 8_查询优化
  9. 9_sql_mode
  10. 10_慢查询日志
  11. 11_批量数据脚本
  12. 12_show_profile
  13. 13_锁机制
  14. 14_主从复制
  15. InnoDB的锁种类
  16. select_for_update_lock_in_share_mode对事务并发性影响
  17. 事务实现原理
  18. 加锁过程

410_服务器

nginx

  1. 反向代理
  2. nginx简介与安装
  3. nginx使用介绍
  4. nginx基本原理

500_中间件

服务注册与发现

zk

  1. zk入门
  2. zk基础命令和客户端操作
  3. zk通知机制

缓存

  1. 分布式KV存储方案-Tair
  2. 缓存分类与选择
  3. BSON和JSON的区别

redis

  1. 1_NoSql详解
  2. 2_redis概述
  3. 3_redis五大数据类型
  4. 4_redis配置文件解析
  5. 5_redis持久化
  6. 6_redis事务
  7. 7_redis的发布订阅
  8. 8_redis主从复制
  9. 9_redis的java客户端jedis
  10. 10_redis集群方案
  11. RESP协议
  12. redis与分布式
  13. redis使用场景
  14. redis使用注意事项

数据库

mycat

  1. mycat概述、安装及配置概览
  2. mycat实现分库分表
  3. mycat实现双主双从高可用读写分离
  4. mycat实现一主一从读写分离
  5. mycat性能监控

sharding-jdbc

  1. sharding-jdbc概述
  2. sharding-jdbc快速入门
  3. sharding-jdbc数据分片
  4. sharding-jdbc读写分离
  5. sharding-jdbc执行原理
  6. sharding-jdbc综合案例
  7. sharding-jdbc总结与sql支持说明

MQ

rocketmq

  1. rocketmq概述与快速启动
  2. rocketmq基本概念介绍
  3. rocketmq集群搭建
  4. rocketmq高级功能
  5. rocketmq消息发送样例
  6. rocketmq使用案例
  7. rocketmq源码分析_消息发送
  8. rocketmq源码分析_topic路由注册与剔除机制
  9. rocketmq源码分析_消息存储之概要设计
  10. rocketmq源码分析_消息存储之内存映射
  11. rocketmq源码分析_消息存储之刷盘机制
  12. rocketmq源码分析_消息消费总览
  13. rocketmq源码分析_消息重试及过滤
  14. rocketmq源码分析_文件恢复和过期文件删除

kafka

  1. kafka概述与入门

501_框架

  1. Finagle
  2. Sofa-Bolt
  3. Thrift_quickstart

dubbo

  1. dubbo基础知识
  2. dubbo配置
  3. dubbo原理
  4. dubbo高可用

mybatis

  1. mybatis简介
  2. mybatis入门
  3. mybatis全局配置文件
  4. mybatis映射文件
  5. mybatis运行原理
  6. mybatis插件开发
  7. mybatis插件之PageHelper
  8. mybatis代码生成器
  9. mybatis动态sql
  10. mybatis缓存
  11. mybatis批量操作
  12. mybatis自定义TypeHandler
  13. mybatis整合spring

spring

  1. spring入门
  2. AOP
  3. IOC
  4. JdbcTemplate
  5. spring事务
  6. scope源码解析
  7. Spring Reactor 入门与实践
  8. spring5.0新特性
  9. spring基于字段的依赖注入缺陷
  10. spring解决循环依赖
  11. WebFlux
  12. spring注解驱动之扩展
  13. spring注解驱动之容器创建过程
  14. spring注解驱动之声明式事务
  15. spring注解驱动之属性赋值
  16. spring注解驱动之注册组件
  17. spring注解驱动之自动装配
  18. spring注解驱动之组合注解
  19. spring注解驱动之AOP
  20. spring注解驱动之Bean生命周期
  21. spring注解驱动之Web

springboot

  1. 1_springboot入门
  2. 2_springboot配置
  3. 3_springboot与日志
  4. 4_springboot与web开发
  5. 5_springboot与数据访问
  6. 6_springboot启动配置原理
  7. 7_springboot自定义starter
  8. 8_springboot与缓存
  9. 9_springboot与消息队列
  10. 10_springboot与检索
  11. 11_springboot与任务
  12. 12_springboot与安全
  13. 13_springboot与分布式
  14. 14_springboot与热部署
  15. 15_springboot与监控管理
  16. springboot多数据源&动态数据源(主从)

springmvc

  1. springmvc架构模式
  2. 请求参数的绑定
  3. 响应数据和结果视图
  4. 常用注解

600_软件过程

架构设计

  1. 订单表的分库分表方案设计
  2. 架构师应该学习的知识
  3. uml中的类图及类图之间的关系

分布式

  1. 分布式事务XA协议
  2. 分布式一致性详解
  3. 各种数据一致性的区别与联系
  4. 漫谈分布式
  5. 谈谈服务雪崩、降级、熔断
  6. 微服务架构-服务网关和注册中心
  7. 雪花算法
  8. CAP原理和BASE思想

幂等

  1. 幂等的实现方案
  2. 幂等实现_基于乐观锁
  3. 幂等实现_基于redis分布式锁
  4. 幂等实现_基于zk分布式锁

springcloud

  1. 微服务架构与springcloud
  2. spirngcloud服务注册与发现Eureka
  3. Spring Cloud Alibaba 新一代微服务解决方案
  4. springcloud服务调用OpenFeign
  5. springcloud服务降级Hystrix
  6. springcloud服务网关gateway
  7. springcloud服务注册与发现consul
  8. springcloud服务注册与发现zookeeper
  9. springcloud负载均衡ribbon
  10. springcloud构建微服务架构
  11. springcloud配置中心config
  12. springcloud请求链路追踪sleuth
  13. springcloud消息驱动stream
  14. springcloud消息总线bus
  15. springcloudAlibaba_nacos_服务注册中心
  16. springcloudAlibaba_nacos_集群和持久化配置
  17. springcloudAlibaba_nacos_配置中心
  18. springcloudAlibaba_seata_介绍与安装
  19. springcloudAlibaba_seata_快速启动
  20. springcloudAlibaba_seata_理解什么是AT、TCC、Saga
  21. springcloudAlibaba_sentinel_和其他框架整合
  22. springcloudAlibaba_sentinel_流控
  23. springcloudAlibaba_sentinel_热点参数与系统规则
  24. springcloudAlibaba_sentinel_熔断降级
  25. springcloudAlibaba_sentinel_quickstart
  26. springcloudAlibaba_sentinel_SentinelResource注解详解

webservice

  1. JAXWS
  2. Restful-Web-Services
  3. soap协议
  4. springboot整合cxf
  5. uddi
  6. webservice介绍
  7. wsdl报文解析

设计模式

  1. 1_软件设计模式概述
  2. 2_面向对象设计原则
  3. 3_创建型_单例模式
  4. 4_创建型_原型模式
  5. 5_创建型_工厂方法
  6. 6_创建型_抽象工厂
  7. 7_创建型_建造者模式
  8. 8_结构型_代理模式
  9. 9_结构型_适配器模式
  10. 10_结构型_桥接模式
  11. 11_结构性_装饰器模式
  12. 12_结构性_外观模式
  13. 13_结构型_享元模式
  14. 14_结构型_组合模式
  15. 15_行为型_模板方法
  16. 16_行为型_策略模式
  17. 17_干掉ifelse
  18. 18_行为型_命令模式
  19. 19_行为型_责任链模式
  20. 20_行为型_状态模式
  21. 21_行为型_观察者模式
  22. 22_观察者模式 vs 发布订阅模式
  23. 23_行为型_中介者模式
  24. 24_行为型_迭代器模式
  25. 25_行为型_访问者模式
  26. 26_行为型_备忘录
  27. 27_行为型_解释器
  28. 适配器模式、桥接模式与外观模式的区别与联系

700_云计算

  1. 大数据、云计算和数据中心三者的区别与联系
  2. 云计算
  3. 云原生
  4. Firebase
  5. IaaS、PaaS、SaaS、BaaS和FaaS