网站架构演变过程
所属分类 architecture
浏览量 1376
单机构建网站
应用服务器与数据库分离
应用服务器集群
数据库读写分离化
用搜索引擎缓解读库的压力
用缓存缓解读库的压力
数据库水平拆分与垂直拆分
应用的拆分
引入消息中间件
应用服务器集群
负载均衡
http重定向
DNS域名解析负载均衡
反向代理服务器
IP层负载均衡
数据链路层负载均衡
IP层负载均衡
请求到达负载均衡器后,负载均衡器修改请求目的IP地址,转发请求
优点 性能好
缺点 负载均衡器带宽成为瓶颈
数据链路层负载均衡
负载均衡器通过修改请求的mac地址, 请求处理完后直接返回客户端,无需经过负载均衡器
负载均衡算法 策略
常用负载均衡算法
NAT
负载均衡器接收用户请求,转发给具体服务器,服务器处理完请求返回给均衡器,均衡器再重新返回给用户。
DR
负载均衡器接收用户请求,转发给具体服务器,请求处理完后直接返回给用户。需要系统支持IP Tunneling协议,难以跨平台。
TUN
同上,但无需IP Tunneling协议,跨平台性好,大部分系统都可以支持。
集群session处理
Session Sticky
Session Replication
Session数据集中存储
Cookie Base 把session存在cookie中
集群session处理
nginx keepalived apache
数据库读写分离
MYSQL master+slave 主从复制
mycat 数据库分库分表中间件
分布式数据库主键生成
全局自增ID 适用于并发不高的场景 可基于数据库或REDIS 等实现
分段 sequence , 一个分库一个 sequence , 分段错开 ,不重复
UUID
UUID 长 ,占用空间大
不是顺序的,写入性能低
业务字段+系统当前时间
或者再加随机数 或 序号
snowflake 算法
符号位 + 时间戳 + 机器id + 序号
数据缓存
本地缓存 缓存服务器 Redis memcached
页面缓存
HTML5 local storage
应用拆分
服务化
微服务架构技术栈
RPC原理简介
消息队列知识点
分布式限流方案
单体应用vs微服务
三十条架构设计原则
应用部署策略
架构知识体系
运维知识体系
上一篇
下一篇
RPC原理简介
mybatis知识点
dubbo功能模块介绍
redis消息发布与订阅
Redis客户端 Jedis Redisson Lettuce 对比
zookeeper watch 机制