河北重大技术需求的可用性战术

一 错误检测

1.1信号/响应:一个组件发出一个信号,并希望在预定义的时间内收到一个来自审查组件的响应,该战术可以用在共同负责某项任务的一组组件内。

对应:用户登录时向服务器进行发送请求。

1.2心跳:一个组件定期发出一个心跳信息,另一个组件收听该信息。心跳还可用于传递数据。

对应:注册时数据的传输。

1.3异常:异常处理程序通常将错误在语义上转换为可以被处理的形式,异常通常与引入异常的程序在同一个进程中。

对应:在进行用户注册的过程中,输入的东西有格式的要求,我们需要对于用户输入不符合格式的地方进行主动抛出异常。

二:错误恢复

2.1表决:运行在冗余处理器上的每个进程都具有相等的输入,它们计算的值都发给表决者,表决者发现异常则终止进程。

对应:当处理器进程出现错误的情况下,通过一定的表决算法,终止或者重启处理器。

2.2主动冗余(Active redundancy ):所有的冗余组件都以并行的方式对事件做出响应,它们的状态都相同,但每次只使用一个组件的响应而丢弃其余组件的响应。

对应:当我们向系统发送一个事件时,系统在多台服务器上同时进行响应,但是我们采用第一个服务器反馈回来的结果。

2.3被动冗余(passive redundancy ):主组件对事件做出响应,并通知其它备用组件必须进行的状态更新。这样,主/从组件的状态是一致的;被动冗余通常用在控制系统中,恢复时间一般在几秒内;在被动冗余中,主组件负责状态同步。

对应:当我们向系统发送一个事件时,系统在一个服务器上进行响应,但是也通知其他服务器进行状态同步,一旦主服务器发生错误,可以立即使用别的服务器。

2.4备件(spare):备件是计算平台配置用于更换各种不同的故障组件。出现故障时,必须将其重新启动为适当的软件配置,并对其状态进行初始化。

对应:当服务器出现错误的时候,我们进行故障组件的更换,并且重新启动。

2.5状态再同步(State resynchronization):主动和被动冗余战术要求所恢复的组件在重新提供服务前更新其状态。

对应:在系统发生错误后要求回到系统发生错误之前的一个状态。

2.6检查点/回滚(Checkpoint/rollback):检查点就是记录所创建的一致状态,遇到故障,可以使用上次正确的检查点状态;

对应:系统设置备份,以及备份间隔,防止错误的产生而无法恢复。

三:错误预防

3.1从服务中删除(removal from service):该战术从操作中删除了系统的一个组件,以执行某些活动来防止预期发生的故障,比如重新启动备用组件阻止当前组件的内存泄漏;

对应:无。

3.2事务(transactions):事务是指绑定几个有序的步骤,以能够立刻撤销这个绑定,可以使用事务来防止任何数据受到影响;

对应:无。

3.3进程监视器(process monitor):监视进程中存在的错误,如果发现错误,则删除该执行进程,并为该进程创建一个新的实例。

对应:在我们进行输入的过程中,如果在最后出现错误,提交注册表后,系统给与反馈,并且删除你刚刚提交的内容。

河北重大技术需求可修改性战术

一:局部化修改

1.1预期期望的变更(expected changes ):根据语义一致性原则,预测期望变更的战术并不关心模块责任的一致性,而是关心将变更的影响最小化。

对应:在进行编码的过程中,对系统进行模块化处理,从而使得修改其中一个模块,不影响别的模块。

1.2维持语义一致性(semantic coherence ):语义一致性是模块中责任之间的关系,目标是确保所有这些责任都能够协同工作,不需要过多地依赖其它模块,即这组模块的内聚性。

对应:在进行编码的过程中,尽可能的将函数抽象,变为通用函数。

二:防止连锁反应

2.1信息隐藏(Hide information ):目的是将变更隔离在一个模块内,防止变更扩散;

对应:在各个模块中尽量不通用别的模块的信息。

2.2维持现有接口(Maintain existing interfaces ):如果B依赖于A的一个接口的名字和签名,则维持该接口及其语法能够使B保持不变。

对应:在添加新的接口时,不改变原有的接口。

2.3限制通信路径(Restrict communication paths ):限制与一个给定的模块共享数据的模块,包括生产和使用该模块的数据。

对应:对于各个模块设置一个确定调用办法,用于使用。

三:延迟绑定时间

3.1推迟绑定时间支持部署时间及允许非开发人员修改;

对应:登录界面验证码的设定。

转载于:https://www.cnblogs.com/baiyue/p/8626063.html

基于《河北省重大技术需求征集系统》的可用性和可修改性战术分析相关推荐

  1. 《XXX重大技术需求征集系统》的可用性和可修改性战术分析

    在网站的界面完整有效的呈现在最终用户面前前,其中经历的每一环节出现问题都会导致网站页面不可访问.原因如,如DNS被劫持.网站交换机失效,硬盘损坏,网卡松掉,机房停电等都可能导致网站不可用(网站故障)情 ...

  2. 《重大技术需求征集系统》项目目标文档

    分组:每四人一组 主题:xxx征集系统 成果: 讨论结束后,每组提交一份课堂讨论记录(电子版发表到博客上,纸质版小组成员签名,下节课提交). 每人根据课堂讨论结果提交一份系统利益相关者描述案例.撰写项 ...

  3. 基于区块链技术的溯源系统-总结

    主要工作 设计了一个基于区块链技术的新型的溯源系统, 并实现一个原型系统.该溯源系统同时使用公有链与许可链两条区块链.上述溯源系统在具有高吞吐量的同时,能够利用比特币或以太坊等公有链来保证溯源信息的安 ...

  4. matlab 固有频率 振型,基于MATLAB语言多自由度振动系统固有频率及主振型计算分析.pdf...

    7 8 2007 1 36 1 MA T LA B 文 涛, 胡青春 ( , 510 640) : 多自由度振动系统固有频率及主振型计算分析是研究其振动特性的 础, 矩阵迭代法是计 算固有频率及主振型 ...

  5. 基于Servlet的技术问答网站系统实现(附源码)

    这一篇博客将详细介绍一个基于Servlet的问答网站的实现,有详细的代码. 可能篇幅较长,以代码为主,有兴趣的童鞋看完可以尝试动手搭建一个属于自己的问答社区. 工具:Eclipse,数据库用到了MyS ...

  6. 基于Windows Media技术的流媒体系统的设计与实现

    摘要:本文在简介流媒体技术及其中的Windows Media技术的基础上,结合实际简述了Windows Media服务器的安装.ASF文件的制作以及"点播单播发布点"." ...

  7. 开学测试代码——需求征集系统

    首先,老师给了我们美工做的模板,让我们使用这个模板进行编程,我当时觉得,哎呀我的妈呀,这是啥!!后来我把文件导入进来后,发现有的.html文件是可以跑起来的,然后我就开始写测试.刚开始进展很顺利,但是 ...

  8. 基于蜂群对花蜜需求所做的数量模型构建及分析

    问题重述: 背景:蜜蜂对人类在地球上的生存具有极其重要的作用.除去蜂蜜生产, 蜜蜂还可以通过传粉为我们间接提供食物.自 2007 年以来,由于病毒.杀 虫剂.捕食者和栖息地破坏等因素,世界各地蜜蜂数量 ...

  9. b s架构监控java,基于B/S的视频监控系统的设计与实现

    基于B/S的视频监控系统的设计与实现 本文分析了基于C/S架构的视频监控系统的缺点和B/S结构的诸多优点,通过需求分析,设计实现了一种以B/S为架构的视频监控系统,并针对现存视频监控系统在权限控制方面 ...

最新文章

  1. 无线ap软件_无线WLAN网络的优化技术
  2. OpenStack、Docker、KVM被评为最火的云开源项目
  3. scrapy框架_Python学习之Scrapy框架
  4. pip install scikit-image on windows 失败 解决方案
  5. 飞凌 ok6410 按键驱动源码及测试代码
  6. 长沙理工大学计算机考研难吗,长沙理工大学考研难吗?一般要什么水平才可以进入?...
  7. 1208: [HNOI2004]宠物收养所
  8. 编译错误:GL/glew.h, GL/glut.h, EGL/egl.h没有那个文件或目录
  9. Atitit 项目管理优化体系图 第4章 项目整合管理 开始 计划 执行 监控 变更 结束 第5章 项目范围管理  SOW工作说明书 成员通讯录 wbs大概模块级别 第6章 项目时间
  10. 免费画图软件推荐 - draw.io
  11. 视频剪辑怎么学?五大经验分享,入门可参考
  12. 编程经验:关于如何在自己的网站或博客添加CNZZ站长统计功能
  13. 永洪科技发布Yonghong Z-Suite V7.5 重新定义大数据驱动业务增长成功标准
  14. 食品经营许可证模板_食品流通许可证与食品经营许可证
  15. 字符串中出现次数最多的字符
  16. 使用云服务器ECS搭建DoH服务的开发实践
  17. python--测试使用不同的方式计算位涡平流项的差异
  18. 360剑灵洪门崛起服务器维护,剑灵洪门崛起公益服,年度bt无限元宝满v平台,快速升级及上手攻略...
  19. 怎么判断膝关节错位_膝关节基础(三):髌骨脱位查体和诊断
  20. 燕山大学课程实践项目报告:ISBN号识别系统的设计与开发

热门文章

  1. FIle类常用工具方法整理(持续更新)
  2. 苹果机的时间格式转换为时间搓
  3. The Largest Clique UVA - 11324( 强连通分量 + dp最长路)
  4. return to dl_resolve无需leak内存实现利用
  5. Client访问Tomcat简单流程(Struts2)
  6. 程序员很忙吗_当一个程序员一天被打扰 10 次,后果很惊人!
  7. (20)System Verilog接口interface设计示例
  8. 1.GD32F103配置环境,搭建工程
  9. 7006.vue项目之电商项目实战1-环境搭建及后台接口测试
  10. allow_pickle什么意思_如何修复草图算法中“当allow_pickle=False时无法加载对象数组”...