网站的高可用架构 Availability

news/2024/5/20 18:57:26/文章来源:https://blog.csdn.net/weixin_33998125/article/details/90659818

可用性度量和考核

度量

用多少个9来表示,表示一年中可用时间的百分比

考核

可以用如下的表:
这里写图片描述
故障分=故障时间(分钟) * 权重。 计入考核

高可用的网站架构

这里写图片描述
分层架构,每一层都分布式部署。使用冗余和故障转移的方式保证可用性。
- 应用层用负载均衡服务器,能够监测服务器的可用性,把不可能的踢出集群
- 服务层使用分布式调用框架dubbo
- 数据库使用同步复制,实现数据冗余。
- 还要考虑升级发布引起的宕机

高可用的应用

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

集群的session管理

  • Session复制, 开启web服务器的session复制功能,能够在不同的web服务器之间进行session的同步。适合规模较小的情况
  • Session绑定, 可以利用负载均衡的源地址hash算法实现,负载均衡服务器总是将同一IP的请求发到同一台服务器上(也可以根据cookie中的用户信息) 。这种显然不高可用
  • 用cookie记录session 记录大小优先,每次都要用cookie传输影响性能。浏览器可以关闭cookie. 优点是简单,支持服务器扩展。
  • session服务器 构建独立的session服务器。 可以简单的使用分布式缓存进行保留,如果需要继承SSO的话,就可能需要专门的session服务管理平台

高可用的服务

整体来说就是冗余,故障转移,使用分布式调用框架。
- 分级管理 0级,1级。更重要的服务,使用更好的设备
- 超时设置 不超时会长时间占用服务器资源。 可以设置超时策略,重试,还是转移
- 异步调用
- 服务降级 高并发时,可以
拒绝服务。 随机拒绝部分请求
关闭功能。关闭部分不需要的功能。双十一就是这样干的
- 幂等性设计 针对于重试机制。不会出现下两个订单的情况

高可用的数据

数据库高可用使用复制备份和故障转移解决
缓存的高可用作者认为应该使用集群分布式缓存,单点失效只是小部分失效不会造成数据库太大的压力

CAP原理

拂去耐受性(可以线性伸缩),可用性(随时可读写),一致性(所有应用访问得到相同的数据)。无法同时满足。
大型网站可能放弃一定的一致性。把一致性细分:
- 强一致性 各个副本总是一致的
- 数据用户一致 保证终端用户访问时,通过纠错和校验,确定一个一致且正确的数据返回给用户。
- 数据最终一致性 同一用户连续访问结果不同。 但是系统经过一段时间能够自我恢复和修正。
应该做到用户一致性

数据备份

冷备:无法保证最终一致性和可用性(因为恢复时间太多)
热备:
- 异步热备 只写主存储区。 异步线程同步写从存储区
- 同步热备 同时写主备连个存储区。mysql支持半同步,保证至少有一个备写完。
读写分离也是基于数据备份

失效转移

重新路由的过程
- 失效确认 心跳检测和应用程序访问失败报告 一般访问失败了还是需要再次发一次心跳,防止误判。
- 访问转移 重新路由,如果是对等的,直接路由就行了。但是如果是不对等的,就要根据路由算法,重新算数据等等。
- 数据恢复 转移之后修复宕机的服务,然后重新加入集群

高可用的软件质量保证

  • 网站发布,自动化发布过程,减少人为操作带来的问题
  • 自动化测试 Selenium等。
  • 预发布 通过host访问,没有配置到vip或者负载均衡中。 注意不要因为预发布而导致了问题,比如修改了线上的金额等
  • 代码控制。 分支开发主干发布
    这里写图片描述
    火车发布模型。注意,可能有重要客人,没他火车就不开
  • 灰度发布 如果发布失败,就要回滚,这个时候,可能会耽误很长时间,因此可以先发灰度组运行一段时间,如果不错,再发剩下的

网站运行监控

监控数据采集

  1. 用户行为日志
    用户的操作系统,浏览器,ip地址,访问路径,页面停留时间等,用于分析用户行为,优化网站设计,个性化营销与推荐。
    • 服务器端日志收集 开启web容器的日志功能即可。 缺点是可能会失真
    • 客户端浏览器日志手机。 需要专门JS脚本
    • 使用Storm等统计分析工具
  2. 服务器性能监控
    系统Load,内存,磁盘,IO。等进行预警。 目前的开源工具是Ganglia
  3. 报告, 设置阈值,进行告警

监控管理

采集之后可以对系统性能评估,集群规模伸缩性预测,进行风险预警,自动负载调整等。
主要用来做如下的功能: 系统报警,失效转移,自动优雅降级

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_728748.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通过云服务器搭建自己网站,通过云服务器搭建自己网站

通过云服务器搭建自己网站 内容精选换一换Discuz!论坛是全球成熟度最高、覆盖率最大的论坛软件系统之一。用户对论坛的访问可分为高峰期和平峰期,若论坛采用多服务器部署模式且满足高峰时期的负载需求,平峰期必有部分服务器处于闲置状态,增加…

Apsara Clouder云计算专项技能认证:网站建设-简单动态网站搭建

一.课程介绍 1.课程目标 了解静态网站和动态网站的区别掌握动态网站的不同实现方式在阿里云上如何搭建 wordPress网站以及 wordPress 网站的管理和优化二.网站搭建的类型 1.网站的主要类型 静态网站:指全部由 HTML 代码格式页面组成的网站,所有内容包含在网页文件中,主要用到的…

Ubuntu下Apache+php+mysql网站架设详解

目录 1 基础2 安装2.1 安装LAMP2.2 图形化管理软件(可选)2.2.1 安装webmin2.2.2 安装phpmyadmin3 配置文件路径3.1 常用命令3.2 配置apache3.2.1 Apache模块3.3 配置PHP53.4 配置MySQL3.4.1 MySQL常用命令3.4.2 配置文件(新手、无特殊要求勿动…

美国政府所有网站开始使用 HTTPS 加密

作为维护安全和隐私的一项新举措,美国政府宣布了一项计划,使HTTPS成为其公共网站联邦安全标准。其目标是到2016年12月31日,让美国政府所有网站都使用HTTPS加密。白宫甚至在Github上张 贴这项政策的最终版本,让公众自己来进行比较。…

网站防止恶意登陆或防盗链的使用

使用场景:明明引用了一个正确的图片地址,但显示出来的却是一个红叉或写有“此图片仅限于网站用户交流沟通使用”之类的“假图片”。用嗅探软件找到了多媒体资源的真实地址用下载软件仍然不能下载。下载一些资源时总是出错,如果确认地址没错的…

网站就必须用响应式布局吗?MVC视图展现模式之移动布局

本文先引入给读者一个自己研究的机会,下次深入说明一下: 废话不多说,直接上图 新建一个mvc的项目 在视图里面添加一个移动端视图 正常访问一下 Bootstrap自带的响应式的方式(页面代码并没有改变) 我们来模拟一下移动端…

重庆文化执法部门清理27个违法音乐网站

【TechWeb】3月20日消息,据“扫黄打非”微信号消息,2018年12月,重庆市文化市场行政执法总队接网友举报称,有音乐网站提供免费听歌服务,上传了大量含有违背社会公德内容的歌曲,随即展开立案调查。 经查&…

2016年10大SEO趋势预测

针对很多人所说的老SEO已经死亡,转型,还是提倡新SEO,这都不是需要格外注意的东西,做好自己的能力,视野提升,储备下快速学习的能力。ASO也好,社交SEO也好或者是传统SEO也好,最重要的是…

Vue+thinkJs博客网站(一)之vue多页面应用的webpack3配置

一.项目简介 本项目使用vue作为前端框架,thinkJs作为后端框架,构建个人博客网站,页面分为博客展示和后台管理,主要目的是学习使用thinkJs。现在只完成了主要的博客增删改功能,发现webpack的配置遇到了一些坑&#xff0…

LAMP网站平台的构建和PHP应用部署

LAMP是目前最成熟的一种企业网站应用模式,可提供动态web站点应用及开发环境构成组件:Linux 、Apache、MySQL、PHP/Perl/Python公司需求:搭建一台可以支持动态web站点 的网站,并且可以支持PHP语言开发的环境,通过PHP部署…

说说我平时用的几个学习网站(网址)吧,希望可以给你帮助

为什么80%的码农都做不了架构师?>>> 1.颜色表及html代码,平时用用到色彩可以查下:颜色查询 2.在线代码着色高亮,这个特别好用,我平时在云笔记上都用它,记得复制的时候全部都复制进去&#xff…

阿里云系列——3.网站备案初步核审(详细步骤)---2015-11.12

网站部署之~阿里云系列汇总 http://www.cnblogs.com/dunitian/p/4958462.html 流程图: 1.注册账号 进:https://beian.gein.cn/account/login.htm 注册一个账号,然后会收到邮件 立即备案 如何办理首次备案?如果您从未办理过备案&am…

什么样的网站才能让搜索引擎喜欢?

要做好一个网站,更多的重心而不是网站有多么好,而是网站的运营、网站的seo优化、网站的推广有没有做好。对于一个网站的发展来讲,怎么做好这一系列的工作才是最为重要的。搜索引擎都喜欢什么样的网站?怎么样做才能让搜索引擎爱上你…

大型网站技术架构(六)网站的伸缩性架构

2019独角兽企业重金招聘Python工程师标准>>> 网站系统的伸缩性架构最重要的技术手段就是使用服务器集群功能,通过不断地向集群中添加服务器来增强整个集群的处理能力。“伸”即网站的规模和服务器的规模总是在不断扩大。 1、网站架构的伸缩性设计 网站的…

centos下linux运行asp网站搭建配置-mono+nginx

一、首先安装一些需要的软件包 1、 首先更新CentOS上的软件包:yum –y update。 2、 安装一些需要的库: yum -y install gcc gcc-c bison pkgconfig glib2-devel gettext make libpng-devel libjpeg-devel libtiff-devel libexif-devel giflib-devel l…

站长基础知识,网站被镜像是好是坏,被恶意镜像怎么处理

网站被镜像一直以来,感觉这个问题应该不会出现在自己的网站,因为只是个小站应该不会被镜像吧,然而并不是这样,通过后台加速和服务器后台流量统计发现,网站流量非常异常(有时候pv上万)&#xff0…

超酷的测速网站Ookla SPEEDTEST

测试网速的工具、网站估计不少,在百度一搜都能搜出一大堆,下面介绍一个国外测试网速的网站,用户体验相当棒,感觉酷毙了,那些其它测试网速的网站跟这个比起来,简直弱毙了。这个网速测试网站就是:…

小虾视频网站广告屏蔽器 V 5.0

本软件用于屏蔽一些视频网站的广告,也具备屏蔽一些恶意网站的作用!如过你发现在电脑正常的情况下有些网友打开开,那是因为屏蔽的原因,只要单击一键还原广告就OK了!~ 打开软件后不要老是点击不然容易出错!要…

50-100台中小规模网站集群搭建实战项目(超实用企业集群)

【老男孩运维班期中搭建50-100台规模的集群实战】学员入学第8-12周,必须完成的中小型网站集群实战,老男孩linuxpython高薪运维班全员项目实战1、项目规划:搭建50-100台规模的集群实战设计2、开启7-8台虚拟机(kickstart无人值守装机…

知识点详解的一些网站搜罗

2019独角兽企业重金招聘Python工程师标准>>> NSTimer 使用 绝对超详细(2):http://blog.csdn.net/davidsph/article/details/7899731 iOS 随机数(Fixed):http://blog.csdn.net/ouyangtianhan/article/details/17464149 应用程序挂…