随笔分类 -  架构

摘要:1.写日志也会引发故障 故障现象: 某应用服务器集群发布之后不久就出现多台服务器相继报警,硬盘可用空间低于警戒值,并且很快有服务器宕机。 登录到线上服务器,发现log文件夹里的文件迅速增加,不断消耗磁盘空间。 原因分析: 这是一个普通的应用服务器集群,不需要存储数据,因此服务器里配置的是一块100G 阅读全文
posted @ 2018-05-22 00:50 明王不动心 阅读(531) 评论(0) 推荐(0) 编辑
摘要:和缓存服务器集群的伸缩性设计不同,数据存储服务器集群的伸缩性对数据的持久性和可用性提出了更高的要求。 缓存的目的是加速数据读取的速度并减轻数据存储服务器的负载压力, 因此部分缓存数据的丢失不影响业务的正常处理,因为数据还可以从数据库等存储服务器上获取。 而数据存储服务器必须保证数据的可靠存储,任何情 阅读全文
posted @ 2018-02-15 22:16 明王不动心 阅读(234) 评论(0) 推荐(0) 编辑
摘要:核心知识点: 1.应用集群负载均衡伸缩性设计 2.负载均衡的算法 应用服务器应该设计成无状态的,即应用服务器不存储请求上下文信息,如果将部署有相同应用的服务器组成一个集群, 每次用户请求都可以发送到集群中任意一台服务器上去处理,任何一台服务器的处理结果都是相同的。 这样只要能将用户请求按照某种规则分 阅读全文
posted @ 2018-02-15 21:28 明王不动心 阅读(233) 评论(0) 推荐(0) 编辑
摘要:回顾网站架构发展历程,网站架构发展史就是一部不断向网站添加服务器的历史,只要工程师能向网站的服务器集群中添加新的机器, 只要新添加的服务器能线性提高网站的整体服务处理能力,网站就无需为不断增长的用户和访问而焦虑。 一般来说网站的伸缩性设计可分为两类,一类是根据功能进行物理分离实现伸缩,一类是单一功能 阅读全文
posted @ 2018-02-15 01:19 明王不动心 阅读(197) 评论(0) 推荐(0) 编辑
摘要:所谓网站的伸缩性是指不需要改变网站的软硬件设计,仅仅通过改变部署的服务器数量就可以扩大或者缩小网站的服务处理能力。 大型网站的“大型”,在用户层面可以理解为大量用户及大量访问,如Facebook有超过10亿用户; 在功能方面可以理解为功能庞杂、产品众多,如腾讯有超过1600种产品; 在技术方面可以理 阅读全文
posted @ 2018-02-15 00:10 明王不动心 阅读(145) 评论(0) 推荐(0) 编辑
摘要:对于一个网站而言,最重要的事情就是保证网站一直“可用”,也就是能够被访问到, 先不管你可以支持多少并发,也不要管后台数据的收集和整理有没有很成熟,首先不论怎样你都必须网站可用。 在前面我们已经阐述了网站高可用的一些手段,下面会进行一些整体的论述。 怎样来阐述一个网站的可用性手段了? 我们应该依据网站 阅读全文
posted @ 2018-02-13 20:22 明王不动心 阅读(204) 评论(0) 推荐(0) 编辑
摘要:“不允许没有监控的系统上线”,这是许多网站架构师在做项目上线评审时常说的一句话。 网站运行监控对于网站运维和架构设计优化至关重要,运维没有监控的网站,由于驾驶没有仪表的飞机。 一、监控数据采集 广义上的网站监控涵盖所有非直接的业务行为的数据采集与管理, 包括共数据分析师和产品设计师使用的网站用户行为 阅读全文
posted @ 2018-02-04 00:49 明王不动心 阅读(343) 评论(0) 推荐(0) 编辑
摘要:在网站运维实践中,除了网络、服务器等硬件故障导致的系统可用性风险外,还有来自软件系统本身的风险。 下面会介绍一些为了保证线上系统的可用而采取的一些与传统软件按开发不同的质量保证。 1.网站发布 网站需要保证7x24高可用运行,同时网站又需要不断地发布新功能吸引用户以保证在激烈的市场竞争中获得成功。 阅读全文
posted @ 2018-02-03 23:43 明王不动心 阅读(374) 评论(0) 推荐(1) 编辑
摘要:核心知识点: 1.CAP原理 a.数据的可用:保证数据不丢失 b.数据的一致性:是否能提供一致性的数据 c.分区耐久性:随着数据量的增加,满足跨网络请求 2.数据备份 (1)冷备:简单廉价,不能保持数据的一致性 (2)热备 a.异步热备:master-slave,先写入主服务器 b.同步热备:无主从 阅读全文
posted @ 2018-01-30 01:38 明王不动心 阅读(235) 评论(0) 推荐(0) 编辑
摘要:网站的页面能完整呈现在最终用户面前,需要经过很多环节,任何一个环节出了问题,都可能导致网站页面不可访问。 DNS会被劫持、CDN服务器可能会挂掉、网站服务器可能会宕机、网络交换机可能会失效.......都可能会导致网站不可用。 网站不可用也被称作网站故障,业界通常用多少个9来衡量网站的可用性, 如Q 阅读全文
posted @ 2018-01-30 00:00 明王不动心 阅读(265) 评论(0) 推荐(0) 编辑
摘要:通常企业级应用系统为提高系统可用性,会采用较昂贵的软硬件设备, 如IBM的小型机乃至中型机大型机及专有操作系统、Oracle数据库、EMC存储设备等。 互联网公司更多地采用PC级服务器、开源的数据库和操作系统,这些廉价的设备在节约成本的同时也降低了可用性, 特别是服务器硬件设备,低价的商业级服务器一 阅读全文
posted @ 2018-01-29 02:35 明王不动心 阅读(349) 评论(0) 推荐(0) 编辑
摘要:首先为了让我们能够对Cookie和Session有一个初步的理解,先给出一个问题和一个例子来引出Cookie和Session,然后随后带着问题再去思考Cookie和Session二者的机制。 问题1:为什么我们在浏览网页的时候,会发现它会自动的给你推送一些内容,推送的这些内容并不是随机的, 是一些与 阅读全文
posted @ 2018-01-28 18:25 明王不动心 阅读(230) 评论(0) 推荐(0) 编辑
摘要:在互联网产品的发布过程中也较多采用此种发布方式:产品的发布过程不是一蹴而就,而是逐步扩大使用用户的范围。其中用到的策略就是“灰度发布”。 1.什么是灰度发布? 灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。 AB test就是一种灰度发布方式,让一部用户继续用A,一部分用户开始用B, 如果用 阅读全文
posted @ 2018-01-28 01:05 明王不动心 阅读(821) 评论(0) 推荐(0) 编辑
摘要:核心知识点: 服务高可用的手段 1.无状态服务的失效转移策略 2.分级管理:核心服务区别对待(处理多的先吃肉) 3.超时设置:不要让错误一直存在 4.异步调用:一节车厢坏了不要影响整趟列车 5.服务降级:关键的时候先护住头 6.幂等性设计:避免重复请求带来的问题 可复用的服务模块为业务产品提供基础公 阅读全文
posted @ 2018-01-28 00:06 明王不动心 阅读(232) 评论(0) 推荐(0) 编辑
摘要:核心知识点: ·1.应用层:主要处理网站应用的业务逻辑 2.应用的无状态:应用服务器不保存上下文信息,只进行业务逻辑处理。 3.负载均衡:将数据和流量分摊到一个集群上,提高负载均衡的能力,失效转移 4.网站的高可用主要是基于应用的无状态,但是总是有状态 5.Session管理机制和优缺点 a.Ses 阅读全文
posted @ 2018-01-26 01:50 明王不动心 阅读(335) 评论(0) 推荐(0) 编辑
摘要:核心知识点: 1.PV:(page view)页面浏览量,页面刷新一次就算一次PV,只要请求发给浏览器,无论是否打开都算作一个PV。 2.UV:(unique visitor)独立访客数,一天之中一个Cookie算一个独立访客。 3.IP:独立IP数,一天中一个IP不论访问几次都算作一个IP 4.C 阅读全文
posted @ 2018-01-06 23:36 明王不动心 阅读(1903) 评论(0) 推荐(0) 编辑
摘要:不同视角下有不同的性能标准,不同的标准有不同的测试指标。 从开发和测试人员的视角,网站性能测试的主要标准有响应时间、并发数、吞吐量、性能计数器等。 1.响应时间 指应用执行一个操作需要的时间,包括从发出请求到收到最后响应数据所需的时间。 响应时间是系统最重要的性能指标,只观的反应了系统的快慢。 测试 阅读全文
posted @ 2018-01-06 22:50 明王不动心 阅读(244) 评论(0) 推荐(0) 编辑
摘要:核心知识点: 存储性能优化无非从磁盘类型、数据结构以及存储备份方式来进行,根据业务场景选择最合适的方案。 1.机械vsSSD(磁盘类型) a.机械:由于每次访问数据,都需要移动磁头臂,因此连续访问和随机访问性能差别比较大。快速顺序读写、慢速随机读写 b.SSD:使用硅晶体存储数据,因此像内存一样随机 阅读全文
posted @ 2018-01-06 19:29 明王不动心 阅读(4071) 评论(0) 推荐(0) 编辑
摘要:核心知识点: 网站性能优化第一定律:优先使用缓存。 1.分布式缓存 (1)缓存原理 a.什么是缓存?(将数据存储在相对较高访问速度的介质中,以供系统处理) b.缓存的优点:访问速度快,如果需要计算可以减少计算时间 c.缓存的本质是一张以键值对存储的内存hash表 d.主要用来存储:读写比例高,很少变 阅读全文
posted @ 2018-01-01 00:41 明王不动心 阅读(971) 评论(0) 推荐(0) 编辑
摘要:核心知识点: 1.排查网站性能瓶颈的手法:分析各个环节的日志,找出异常部分 2.Web前端:网站业务逻辑之前的部分(浏览器、图片服务、CDN) 3.优化手段 1)浏览器优化 (1)减少http请求 a.http请求的开销:建立通信链路、进行数据传输、,同时要启动独立的线程去处理。 b.减少http的 阅读全文
posted @ 2017-12-28 01:55 明王不动心 阅读(255) 评论(0) 推荐(0) 编辑