后端工具和算法集
总结一下后端常用的工具和蕴含的算法
TODO: 应该把 GitHub 5000 star 以上的项目都看一下
-
前端
- 框架
- vue
- 框架
-
数据库
- mysql(btree)
- postgresql
- redis
- pika/rocksdb/leveldb
- elasticsearch
- mongodb
- memcache 功能是redis的子集,现在用得比较少了
-
消息队列
- kafka
- redis stream
- rabbitmq
- amqp 协议
-
RPC 和序列化
- protobuf/grpc
- thrift
- msgpack
- envoy
- service mesh 的思想
-
负载均衡
- 四层和七层负载均衡的区别
- nginx
- LVS
- 一致性哈希
-
部署和容器化
- docker
- cgroups
- kubernetes
- borg 论文
- docker
-
CI
- jenkins
-
web 框架
- django(MVC 模式)
- flask
-
日志收集
分布式系统中需要日志可能分布在不同的机器上,要想查找一条错误日志,可能需要 ssh 到不同的机器上,非常浪费时间和精力。可以把日志收集到一个统一的存储中,方便检索查看
- filebeat
- sentry
-
监控
时序数据库
- OpenTSDB - influxdb - prometheus
前端面板
- grafana
-
高并发厂家服务
- 计数服务
- 限流服务
- token bucket
-
搜索引擎相关
- simhash
- tf-idf
-
统一登录
- CAS,了解CAS协议
- kerbos
-
操作系统
- 内存换页算法
- OPT
- FIFO
- LRU
- CLOCK
- 内存换页算法
-
限流
-
锁
- 分布式锁
- 自旋锁
- 乐观锁、悲观锁