分布式系统的特点
- 高并发,大流量(qps,tps)
- 海量数据
什么是分布式
分布式系统是由很多计算机组成, 他们之间的通信通过网络连接完成, 对外表现为一个整体.
分布式技术上需要解决两个问题, 一个是业务拆解, 一个是节点通信.
分布式和集群的关系
分布式是指一个系统由多个业务模块组成,他们分别部署到不同服务器;
集群是指一个业务部署到多个服务器;
分布式发展历史
- 1964年IBM发布大型机之后, 引领系统向集中式方向发展;
-
PC机发展起来后, 它的性能和计算能力得到迅猛发展, 同时集中式发展出现瓶颈; 标志性的事件是淘宝的去IOE运动
IOE 是指IBM服务器, Oracle数据库集群, EMC存储
lamp: linux+apache+mysql+php
- 单服务器: 应用+DB
- 应用和DB分离
-
应用集群, DB (问题? session, 集群请求转发, 集群方案:f5硬件, lvs软件)
会话方案: 1.session sticky; 2. session replication; 3. 集中式session; 4. cookie
- DB集群, 读写分离 (问题? 同步,数据库路由(mycat))
- 搜索引擎 (问题? 实时或定时同步)
- Nosql缓存
- DB的水平/垂直拆分
- 业务服务拆分
各业务做集群
分布式系统的监控
调用跟踪和调用链, 服务器状态监控
zipkin, zabbix等