海量运维、运营规划之道 - 读书笔记

架构规划

产品、架构、成本的生命周期

  • 引入期,通常采用灰度放量,例如发放邀请码。
  • 成长期,用户基数增长、产品逐渐丰富、系统模块化,宽带成本开始成为主成本。
  • 成熟期,增长放缓,活跃度达到顶峰。架构优化调整:多IDC部署,逻辑层服务分布式和集群部署,P级分布式存储,分布式DB与Cache,数十G到数百G带宽成本。
  • 衰退期,新产品或替代品出先,用户开始流失,架构沉淀完成,架构开始平台化,升级到部门甚至公司级别。

负载均衡、架构、速度、容灾、与成本的把控,既要满足阶段性需要,保持可扩展性,又不能超出计划。

产品第一,运营制胜。

图片发自简书App
  • 质量、速度、成本
  • 专业化、平台化、持续化
  • 可伸缩、可调度、可扩展
  • 标准化、规范化、模块化
  • 全网调度,速度与容灾

分布

  • 多ISP分布,BGP或多线IDC
  • 多IDC

策略

  • 静态资源,中心IDC与CDN,一线城市IDC重点覆盖,CDN做省内覆盖。
  • 动态内容,主要依靠多IDC之间专线做Qos或透明代理。
  • 就近接入,按IDC所在区域覆盖。

调度

  • GSLB分POOL调度,每个POOL对应就近各省及ISP解析。
  • 灾备,通过GSLB进行区域或某同ISP的IDC所负责的用户覆盖的调度。


    图片发自简书App

架构概览

  • 动静分离
  • 静态、动态架构拆分再拆分。Web Server 定制,产品平台化,应用平台化,架构平台化,运维和运营平台化。
  • 核心IDC+多家CDN分流,IDC容灾,区域容灾。
  • 高速跨IDC、ISP分发能力。
  • PB级存储,可伸缩,易扩容,逻辑转存,冷热分离。
图片发自简书App

IDC策略、分布制胜、速度第一

用户访问过程

  • 浏览器输入域名
  • 浏览器向本地DNS请求解析
  • 本地DNS将请求发送到网站授权的DNS服务器(涉及根DNS)
  • 授权DNS将服务器的IP地址发送给本地DNS
  • 本地DNS将解析结果返回给用户,同时将结果缓存,直到TTL过期
  • 用户得到IP,访问IP指向的服务器

影响速度的三个环节

  • 第一公里,服务器出口宽带、服务器性能
  • 中间一公里,互联网传输环节、运营商互联互通、骨干网络设备和链路
  • 最后一公里,ADSL、有线电视宽带、小区Lan接入状况

IDC规划

  1. 将全国分为华北、华东、华南、西南、西北五大区域,分区域、分运营商、按用户比例精细化IDC覆盖。
  2. 针对电信、联通大省进行省内IDC覆盖,如:广东电信、山东联通
  3. 大区IDC以省为单位的CDN,缓解骨干网络和分流大区核心IDC压力,提升速度、降低带宽成本

速度

网站速度关键指标

  • 首屏时间:浏览器完成第一屏渲染的时间
  • 总下载时间:打开页面总消耗时间
  • 首包时间:从浏览器发送HTTP请求结束到结束到Web服务器返回到第一个数据包
  • 建立连接时间:建立TCP/IP连接消耗时间
  • DNS时间:域名解析消耗的时间
  • 总下载字节数:页面所有元素的大小之和
  • 网页元素数量:元素数量越多,与服务器交互越多,网络传输及通讯越频繁(js、css、图片等)
  • 基础页面下载时间:即服务器返回多纯文本HTML文件(网页第一个请求),含DNS解析、TCP/IP建立、SSL握手等时间总和,决定了首屏体验。

影响速度等因素

  • 横向
    • 用户端:地域性、ISP属性
    • 网络端:中国网络基础环境复杂度(例如:长城?哈哈)、网络运营商(运营、通信、互联)、IDC和ISP分布
    • 服务器端:服务器配置、性能优化、系统优化
  • 纵向
    • 产品形态(产品规划复杂度、产品功能数量)
    • 设计、前端
    • 架构规划
    • 后端开发
图片发自简书App

网站速度监控

图片发自简书App

网站速度优化

  • 最少请求量
  • tab页面异步加载或延迟加载
  • 合并 js/css文件
  • Css Sprites
  • 统一公用 js/css
  • 合并Ajax请求
  • 避免重定向
  • 减少iframe请求
  • 滚屏延迟加载
  • 多级缓存
  • 最快请求速度
  • 设置页面缓存
  • 请求结果缓存
  • Cookie隔离
  • 动静分离
  • 选择合适的服务器
  • 适当使用多域名增加并行下载
  • 设置Gzip压缩
  • 多IDC部署,动态内部代理
  • 使用CDN
  • 提高IP库定位能力
  • 图片压缩
  • 图片预加载
  • js/css混淆
  • 页面代码压缩
  • 减少cookie大小
  • 逻辑层协议合并、并行处理
  • 数据、索引内存、SSD并行写
  • 最快可见可用
  • 首屏优化原则
  • 减少元素数量、size
  • 前端代码减肥
  • js性能优化 css+div布局
  • js底部加载,按需加载,延迟加载,预加载
图片发自简书App

图片发自简书App

监控

  • 第一阶段:以第三方质量监控和开源系统监控为核心。
  • 第二阶段:自建运营平台,实现应用、质量、容量监测,对应用层、数据层监控。
  • 第三阶段:以ITIL事件管理、问题管理、变更管理、配置管理、发布管理5大流程为核心,建立全流程电子流体系,平台化支撑规模化。
  • 访问监控,过去用户访问速度
  • URL监控,服务实时访问状态
  • 劫持监控,了解全国劫持状态
  • 内容监控,编写爬虫抓取页面

机器监控实践

通过Agent将服务器实时系统数据上报,实现系统秒级监控以及对服务器数据进行汇聚、建模、展现和警告。运营数据包括系统CPU、负载、磁盘、连接数、内存、带宽、IDC带宽等。


图片发自简书App

网络监控实践

  • 第三方监控:IDC维度,ISP维度(自身业务上报)
  • 自建监控:js上报
  • 响应监控:IDC内服务响应
  • 域名监控:DNS解析

应用监控实践

  • 模块监控:动态应用模块监控
  • 数据库监控:数据库运行可视化
图片发自简书App
图片发自简书App

安全

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

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,563评论 18 139
  • 大型网站架构 网站架构包括:前端架构+应用层架构+服务层架构+存储层架构+后台架构+数据中心机房架构+安全架构+数...
    运维开发笔记阅读 1,091评论 0 7
  • 大一的时候,我们辗转于一个个酒桌之上,觥筹交错。我们谈及情谊,谈及女人,谈及梦想,我们就像是海明威笔下那迷惘的一代...
    徐瑞泽阅读 497评论 1 4
  • 有时候发现自己的反射弧真的很长,绕地球几圈都反应不过来。也不算是反射弧吧,更多的应该是对自身了解很少。我一直觉得了...
    想变美变瘦的小胖子阅读 252评论 0 1
  • 一、原理 设置定时器,在清除画面后重新绘制画面 移动:在不同位置重新绘制 序列帧:绘制图片的不同部分 二、案例1、...
    大饼脸me阅读 292评论 0 0