后端技术栈

后端需要掌握的方法

架构

  • 面向对象,推荐《UML和模式应用》
  • 软件方法
  • 整洁架构之道

高可用保障

负载均衡

降级:

  • 降级时机
  • 降级组件:hystrix/resilence

限流:

隔离:

  • 租户隔离
  • 线程隔离:hystrix/resilence

其他

  • 监控:可用性/性能/容量/业务
  • 回滚
  • 压测与预案

高性能

  • 批量、异步
  • 分库分表
  • 各级别缓存:浏览器缓存、静态化;nginx

JAVA

  • hashmap/concurrenthashmap
  • 动态代理
  • 类加载
  • 重入锁与synchronized
  • AQS
  • 对象头、锁优化、volatile
  • 阻塞队列
  • 线程:

    • 线程通信
    • 线程池
    • threadlocal
    • jvm线程状态
  • jvm:

    • 参数、命令
    • 垃圾回收、GC root
    • 查看线程数占用 top -Hp pid;转16进制;jstack pid|grep XX
    • 线程数过多:jca
    • oom
    • 死锁排查
    • jmm、MESI
    • happen before

分布式系统

数据库

事务特性及实现

  • undo log
  • redo log undo log:事务回滚及MVCC;
  • redo log:持久化;配合check point 机制做恢复。 2021.01.18 2021.01.22 DONE

锁:

  • 表锁/行锁/间隙锁/next-key
  • 加锁方式
  • mvcc
  • 死锁排查 行锁防止别的事务修改或删除,GAP锁防止别的事务新增,行锁和GAP锁结合形成的的Next-Key锁共同解决了RR级别在写数据时的幻读问题。

索引结构:

  • 左序匹配原则
  • 索引选择原则
  • 一级索引、二级索引
  • 读写分离

缓存

  • redis:数据备份
  • 缓存数据结构
  • 缓存应用

消息队列

安全

数据结构

优先级队列:

  • 队列

符号表:

  • BST
  • 红黑树
  • 哈希表

分治:

  • 快速排序
  • 归并排序

图:

  • DAG
  • UAG
  • 拓扑
  • 最小生成树
  • 最短路径

大数据处理:

  • 堆排序
  • 布隆过滤
  • bitmap
  • 搜索树
  • 并查集
  • trie树

计算机网络

操作系统

  • CPU调度
  • 内存管理
  • 进程通信方式
于大帅 wechat
打钱! 打钱! 打钱😡😡😡
打赏完了让我夸夸你🤨