架构进化(总有一款适合你)
1,单机 (万里长征第一步)
2,应用, 文件,数据库分离 (分而治之)
3,缓存,cdn,NoSQL;JSON, RPC,REST,GraphQL; 前后端分离;(术业有专攻)
4,中间件; 负载均衡;读写分离;分库分表,业务拆分,集群;(众人拾柴火焰高)
5,SSH,SSM,SpringBoot; 业务中台;SOA, 微服务;(让大象跳舞)
海量请求,高并发关键技术:
1,常用中间件,不同场景不同选择(CAP,BASE):
mysql, Redis, memcached, mongodb, hbase, graphic, MQ, zookeeper
hsf,flink,odps,storm,elasticsearch
2, bucket, 负载均衡
3, 幂等
4, 反向代理
5,流控, 熔断,隔离
6,层层缓存,读写分离,动静分离(CDN),业务分离(流水线)
工程技巧:
1, POJO, AOP, IOC, annoation
2, 模块测试
3,持续集成
4,防止数据倾斜
5,局部变量,线程,协程,进程
6,远程无中断调试
7,五维日志输出
8,异常统一编码
9, 线程池
10,事件驱动
11,重构(设计模式互转)
12, 灰度发布,AB Test
基础知识:
1,python, java, go, sql
2,算法
3,设计模式
4,编译原理
5,操作系统