网站架构

海量数据存储 分库表基础上,单master多slave横向扩展 master和slave通过binlog近乎实时同步,任意slave可为master实时备份 主业务和辅业务模块数据库分离 多地部署,一处写入多出读取,保证就近读取 架构模式 分层:横向切分 分割:纵向切分 分布式:分层和分割的主要目的是为了切分后的模块便于分布式部署。常用方案: 分布式应用和服务 分布式静态资源 分布式数据和存储 分布式计算 分布式配置 分布式锁 分布式文件 集群:多台服务器部署相同的应用构成一个集群,通过负载均衡设备共同对外提供服务 缓存:将数据放距离计算最近的位置加快处理速度,改善性能第一手段,可以加快访问速度,减小后端负载压力。使用缓存 两个前提条件 :1.数据访问热点不均衡;2.数据某时段内有效,不会很快过期 CDN 反向代理 本地缓存 分布式缓存 异步:旨在系统解耦。异步架构是典型的消费者生产者模式,特性如下: 提高系统可用性 加快网站访问速度 消除并发访问高峰 冗余:实现高可用。数据库的冷备份和热备份 自动化:包括发布过程自动化,自动化代码管理,自动化测试,自动化安全检测,自动化部署,自动化监控,自动化报警,自动化失效转移,自动化失效恢复,自动化降级,自动化分配资源 安全:密码,手机校验码,加密,验证码,过滤,风险控制 核心要素 性能(Performance) 可用性(Availability) 伸缩性(Scalability) 扩展性(Extensibility) 安全性(Security) CAP 基于水平扩容能力和成本考虑,传统的强一致的解决方案(e.g.单机事务)纷纷被抛弃。其理论依据就是CAP原理,往往为了可用性和分区容错性,忍痛放弃强一致支持,转而追求最终一致性。 ...

2017年1月8日 · 7 分钟 · Bug1024