首页  

网站架构演变过程     所属分类 architecture 浏览量 1145
单机构建网站
应用服务器与数据库分离
应用服务器集群
数据库读写分离化
用搜索引擎缓解读库的压力
用缓存缓解读库的压力
数据库水平拆分与垂直拆分
应用的拆分
引入消息中间件




应用服务器集群
负载均衡  
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 机制