xx系统属性分析
在本周的课程学习当中,我们简单了解到系统的一些属性,同时在课下也对《大型网站技术架构:核心原理与案例分析》进行了初步的阅读。
在书籍中我看到了许多其他的知识,也对课堂学习的知识有了巩固,现在针对xx系统,做一个简单的系统属性分析。
在对系统进行简单的分析之前,我们先回顾一下系统的一些属性。
首先是可用性,可用性与系统故障以及其后果有关,当系统不再提供其规范中所说的服务时,就出现了系统故障。而可用性是指系统正常运行
时间的比例,他的比值为:平均正常工作时间/(平均正常工作时间+平均修复时间)。
可用性指标是网站架构设计的重要指标,网站可用性看得见,摸得着,跟技术、运营、相关各方的绩效考核息息相关。一个典型的网站设计遵
循基本分层架构模型即应用层、服务层、数据层。应用层主要负责具体业务逻辑处理;服务层负责提供可复用的服务;数据层负责数据的存储和访
问。网站的可用性架构设计不但考虑实际的硬件故障引起的宕机,还要考虑网站升级发布引起的宕机。高可用的服务策略包括分级管理、超时设置
和服务降级(关闭非核心服务)等。高可用的数据是最宝贵的资产,保证数据存储高可用的手段主要是数据备份和失效转换机制。数据备份可以实
现数据完全的持久化,失效转换机制是为了保证系统可用。保证网站高可用,万无一失,是一个艰难的过程,还需要更多努力。
然后是易用性,易用性关注的是用户完成某个期望任务的难易程度。它包括了:有效性、错误避免以及错误处理、用户自信和满意程度等。其
实就是说用户使用某项功能是否觉得简单易用。
那么对于我们现在正在编的这个系统,如何提高他的可用性与易用性呢,《大型网站技术架构》给了我们合理的解决方案。网站的可用性,网
站的可用性一般通过可用性指标来度量,包括2个9, 3个9, 4个9等学习度量指标。它用网站每年最长的故障时间来进行度量。事实上网站的故障
是不可避免的,我们要做的就是尽量降低故障发生的概率。首先我们要学会的就是对系统的分层,通常将系统分为3层,即业务层、服务层和数据层。
这样的分层有利于在故障发生时,准确定位故障,并及时解决故障。而当网站的规模比较大,有较多的用户同时访问时,我们可以交给集群服务器,
然后进行负载均衡,将流量和数据分摊到集群的多台服务器上,提高整体的处理能力,提高可用性。Session管理,在集群环境中,Session管理主
要有Session复制、Session绑定、用Cookie文件记录Session等方法,提供分布式的缓存。除此之外,还有以下几个方法提高可用性。分级管理,
将服务器进行分级管理,核心应用和服务优先用更好的硬件,这样会提高运行的速度;超时设置,由于服务器宕机、线程死锁等原因,使用户长时间
得不到响应,同时还占用应用程序的资源,所以我们要设置服务器超时时间,一旦超时就抛出异常;异步调用,就是将一个服务分成多步,这样就不
会因为一个服务失败导致整个应用的请求失败;服务降级,就是说在网站访问的高峰期,拒绝访问低优先级的服务,节约资源,使服务器避免全部死
机。接下来是一些数据的提高可用性的方法,保证数据高可用手段主要是数据备份和实效转移机制。其中要重点说一下的是代码管理,这里提到Github,
并且预测将成为版本管理的主要软件,我觉得有必要系统的学习一下。
对于网站的易用性,就是然后觉得简单易用的一些处理机制,首先我们可以提高网页的打开速度,再好的网站打开速度慢,也就失去了用户,我
们可以尽量少使用图片,合理设计数据库结构;让网站更加易于操作,如设计一些合理的快捷键,尽量不用动鼠标就不动鼠标;站在用户的角度考虑
问题,多从用户的视角体验网站、多与用户交流、多挖掘用户的需求,让网站做到一切都是从用户的角度出发。
每个系统都会有自己的特性,我们必须学会针对不同的系统做出不同的分析,但同时我们也应该总结出自己的一套方法,才能更好的对系统进行分析。
同时也可以更好的积累经验。
xx系统属性分析的更多相关文章
- 修改Android系统属性SystemProperties.set("sys.powerctl", "shutdown")关机分析
简介: 从之前的博文中我们提到过,关机流程中最后是通过修改Android属性进行关机操作(SystemProperties.java通过JNI调用访问系统属性),当然我们也可以通过adb命令修改And ...
- (转)Android 系统属性SystemProperty分析
一 System Property 代码中大量存在:SystemProperties.set()/SystemProperties.get():通过这两个接口可以对系统的属性进行读取/设置, 顾名思义 ...
- Android 系统属性SystemProperty分析
http://www.cnblogs.com/bastard/archive/2012/10/11/2720314.html Android System Property 一 System Pro ...
- 变化Android系统属性SystemProperties.set("sys.powerctl", "shutdown")关机分析
基本介绍: 从以前的博客中提到,我们,最后,通过关机过程变化Android关机属性(SystemProperties.java由JNI呼叫接入系统属性),当然,我们也能adb命令变化Android系统 ...
- 针对XX系统的可用性方面的相关想法(结合书)
在开始对此系统进行再次分析之前,再回顾下可用性.首先,可用性是与系统故障有关的一个质量属性,是指系统正常运行的时间的比例,一般通过两次故障之间的时间长度或在系统崩溃情况下能恢复正常运行的速度来衡量,同 ...
- 【用户交互】APP没有退出前台但改变系统属性如何实时更新UI?监听系统广播,让用户交互更舒心~
前日,一小伙伴问我一个问题,说它解决了半天都没解决这个问题,截图如下: 大概楼主理解如下: 如果在应用中有一个判断wifi的开关和一个当前音量大小的seekbar以及一个获取当前电量多少的按钮,想知道 ...
- Android SystemProperties设置/取得系统属性的用法总结
通过调查得知,Android系统中取得/设置系统属性的用法参考以下3篇文章就足够了. 1.Android SystemProperties简介 介绍了设置属性需要的权限,已经设置权限的方法. Syst ...
- Tomcat系统架构分析
Tomcat系统架构分析 关于这边blog呢,实际开发中并不会用到,但是我觉得还是很有必要认真的写一下.毕竟我们每天在本地撸码的时候使用的就是tomcat来做web服务器.一个常识就是说我们本地在to ...
- Android基础-系统架构分析,环境搭建,下载Android Studio,AndroidDevTools,Git使用教程,Github入门,界面设计介绍
系统架构分析 Android体系结构 安卓结构有四大层,五个部分,Android分四层为: 应用层(Applications),应用框架层(Application Framework),系统运行层(L ...
随机推荐
- 如何查看和清除svn登录信息
切换svn登录用 点击clear,出现用户信息,勾选后点击ok 即清除 .下次访问svn需要重新登录
- css: box-sizing
border-box 宽度包含了边框 content-box 边框不包含在内容区中,会增加到实际的宽度中
- esxi虚拟机克隆后的主机网卡设置
windows 在虚拟机配置页面右击属性,编辑虚拟机设置,删除掉原来的网卡,重新添加新的网卡 进入系统以后,进入 windows/system32 找到sysprep,运行等待电脑重启 重启过程会稍微 ...
- 小强学渲染之Unity Shader编程HelloWorld
第一个简单的顶点vert/片元frag着色器 1)打开Unity 5.6编辑器,新建一个场景后ctrl+s保存命名为Scene_5.默认创建的场景是包含了一摄像机,一平行光,且场景背景是一天空盒而 ...
- mysql学习笔记--go使用mysql
一. 连接数据库 a. //用户名:密码@[连接方式](主机名:端口号)/数据库名 db,_:=sql.Open("mysql","root:7758521123jf@( ...
- myhabits where in foreach
myhabits传入参数:类,其中类中包含字符串数组String[] 当查询where in String[]时 <select id="selectData" parame ...
- pyinstaller,scrapy和apscheduler
一.scrapy拉起方式 1. 简单cmd拉起 from scrapy.cmdline import execute spiders = [ 'scrapy crawl liepin', 'scrap ...
- node.js的Promise库-bluebird示例
前两天公司一哥们写了一段node.js代码发给我,后面特意提了一句“写的不太优雅”.我知道,他意思是回调嵌套回调,因为当时比较急也就没有再纠结.然而内心中总记得要解决这个问题.解决node.js的回调 ...
- hibernate入门一
---恢复内容开始--- hibernate简介: 1.优秀的持久化(通俗讲把内存上的短时间运行信息存储在持久化硬盘上)框架. 2.作用于持久层,因为没什么侵入性,所以同样适用于其他层面上的存储 3. ...
- Spring Cloud的概述(二)
1.什么是spring cloud? spring cloud,基于spring boot提供了一套微服务的解决方案,包括服务的注册与发现,配置中心,全链路监控,服务网管,负载均衡,熔断等组件,除了基 ...