架构解读

高性能架构

关注点 性能指标,性能测试,性能优化

具体优化内容如概述所示

如何合理使用缓存

1. 读写比再2:1 以上
2. 没有热点的访问
3. 数据的不一致以及脏读  缓存达到失效时间,才能从数据库中重新加载
4. 缓存可用性  一旦缓存奔溃,请求会直接打到db 引起雪崩
5. 缓存预热
6. 缓存穿透  恶意攻击 并发请求不存在的缓存数据,有可能引起mysql打挂策略是针对null值也进行缓存预热

分布式缓存架构

采用redis 高性能 功能丰富 高可用部署 持久化方式

redis 集群的3种方式 主从,哨兵,cluster
cluster redis存储不同的内容,通过节点互连来保证数据传输,当节点大多数失败的时候,集群才会失败。集群有16000+的slot 寻找每个key在哪个slot中 通过crc函数来确定key落在哪个机器上,从而保证高可用

为了保证每个节点的高可用,可在每个节点挂载几个从服务使用哨兵来监控

高可用方案 master/slaver复制, RDB快照持久

实践

性能优先的关闭复制,aof 和快照
master 关闭rdb/aof,开启master/slaver
slaver 开启rdb/aof
开启复制或者持久  预留1倍空间
多实例时,一次执行bgsave 避免fork进程
故障切换
image
  1. 当1出现故障时
  2. config server 根据error log 等等查出是master发生故障, 需要进行master/slaver切换
  3. 通知slave 修改配置信息
  4. 每个app连到新的master并发送请求
  5. 根据analysis 工具分析出原master已经没有任何app连接之后,通知config server
  6. 将slave 切换成master
  7. 如果原master恢复成活,则将其变成新master 的slaver
分布式方案

codis集群方案:

codis用途 codis是用来服务redis集群的方案。作用是充当客户端到redis集群的中间件

codis 分为四个部分 codis-proxy codis-dashboard codis-server zookeeper/etcd

原理:

codis 一共有1024个slot ,当redis 发现内存不足的时候,codis 会 crc() /1024 找到对应的slot 将slot 指向不同的redis 实例 这样就实现了扩容

自动均衡策略 codis会在闲时监控 slot 是否平衡 然后会自动进迁移

reids迁移速度 并行迁移 非常快

槽位同步:

通过zookeeper 来进行同步管理 当config 发生变化时,zookeeper能够感知并提醒codis-server 进行槽位同步

3.0之前的是用 pre-sharding + client-side-routing(用户侧路由) 做分布式方案
3.0之后用redis cluster

pre-sharding 节点部署初期,就提前考虑日后的存储规模,建立足够多的实例(如128个节点)

原理:
有n台主机 m个实例 那总实例= n*M
当业务低的时候 n少 m多
当业务高得时候 n多m少 这样能保证总实例不变 但是性能能够提升

理论:

一台机器部署多个实例,当容量不够的时候将其中实例拆分到不同的机器上

拆分过程:

  1. 在新机器上启动对应的redis实例
  2. 配置新端口为待迁移端口的从库
  3. 复制完成后,切换所有客户端到新的从库端口
  4. 将其从库晋升为主库
  5. 移除老端口实例
  6. 重复以上过程保证所有端口都迁移成功

单点故障问题
也是高可用的解决方案 master/slaver集群的设定 主备切换

如何做容量管理

cpu不是瓶颈,io跟内存才是
设置maxmemory跟阈值报警
设置缓存策略
设置合理过期时间

什么是缓存策略(查看redis 缓存设计以及常用问题)

高可用架构

关注点 可用度度量与考核 基本架构也是3层架构 应用,服务,数据层

通过负载均衡进行无状态服务的失效转移

高可用策略

1. 分级管理
2. 超时设置
3. 异步调用
4. 服务降级
5. 幂等性设计

数据高可用存储

含义:
    数据持久性
    数据可访问性
    数据一致性

如何实现

1.数据备份
2.失效转移机制

CAP理论

一个提供数据的存储服务无法同时满足数据可用性,数据一致性,分区可伸缩性这3个特点

现象:当前大多数的分布式系统满足 分区可伸缩性以及数据高可用性,但是由于集群的增加,出现故障的概率增加,导致很难实现每个节点在任何瞬间都能保持数据的一致性 其就是保证a p,不保证c

伸缩性架构

关注点 2类方式 不同服务器部署不同的服务 二是不同的服务器部署相同的服务集群

根据业务 可以分成水平拆分跟垂直拆分

核心在于负载均衡

负载均衡在各个网络层级中都有不同的做法

  1. http重定向负载均衡
  2. dns域名解析负载均衡 根据A记录来进行负载均衡
  3. 反向代理(nginx)
  4. ip+端口负载均衡(lvs)

mysql 主从读写分离,分库分表 cobar 集群 迁移采用一致性hash

Hbase 依赖HRegion 以及分布式系统HDFS实现

可拓展架构

  1. 利用分布式消息队列降低系统耦合度

  2. 利用分布式服务打造可复用的业务平台

    解决方案 拆分 模块独立部署 纵横拆分

  3. web service 打造分布式服务平台

大型网站分布式服务的需求以及特点

负载均衡
失效转移(节点不可用 立即切换到可用的节点上)
远程通信
整合异构系统

马克思的劳动价值理论

产品的内在价值在于劳动的时间,劳动的时间不在于个体付出的劳动时间,而在于行业一般劳动时间

网站的安全架构

xss攻击 cross site script

csrf攻击 cross site request forgery 跨站请求伪造 利用用户的cookie或者session 来已用户的身份来伪造请求

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,794评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,050评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,587评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,861评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,901评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,898评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,832评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,617评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,077评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,349评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,483评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,199评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,824评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,442评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,632评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,474评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,393评论 2 352