首页 > 其他分享 >3可靠性设计

3可靠性设计

时间:2023-08-13 12:44:13浏览次数:40  
标签:可靠性 恢复 故障 版本 程序设计 设计 双机 冗余

影响软件可靠性的主要因素:

1 软件的开发方法和开发环境

2 运行环境

(3.软件规模:软件规模越大,可靠性越小

4,软件内部结构:内部结构越复杂,可靠性越小

5、软件的可靠性投入:投入越多越可靠

 

软件可靠性设计策略:

1 避错技术:避开错误,软件交付前自行测试,但是做不到将所有的错误检测出来

2  降低复杂度设计

3  检错技术:出错后报警轮询检查然后人工修复,成本低

4   容错技术:(n版本程序色设计(静态冗余)、恢复块设计(动态冗余)、防卫式程序设计

     冗余

    结构冗余:硬件冗余、软件冗余

    信息冗余:校验码

    时间冗余:重复多次进行相同的即计算(计算多次看结果是否都一样)

 

N版本程序设计:

针对一个功能快开发多个版本的程序设计,

先做需求分析,然后多个组都做开发各个版本,然后通过表决器来决定哪个版本

N版本程序设计增加了三个新的阶段:相异成分规范评审、相异性确认、背对背测试

N版本程序的同步、N版本程序之间的通信,表决算法(全等表决、

非精确表决、Cosmetie表决)一致性比较问题,数据相异性

恢复快方法:

用主块和后备块,主块出故障后才用后备块(N版本程序设计是多个版本并行运行)

        恢复快方法    N版本程序设计

硬件运行环境  单机        多机

错误检错方法   验证测试程序   表决

恢复策略     后向恢复    前向恢复

实时性      差      好

 

前向恢复:当出故障,继续执行,当系统恢复时,就会纠正之前的错误

向后恢复:当出故障时,暂停,向后寻找系统正常的状态来修复故障、实时性差

 

防卫式程序设计:

当系统出现异常故障,通过检错机制和错误恢复代码,对故障错误进行撤销,恢复到一个

已知的正确状态中去。(如try catch)

实现策略:错误检错、破坏估计、错误恢复

 

 

双机容错:

双机容错式集群的前身

模式:

双机热备模式(主系统,备用系统,两者之间用心跳线相连)

双机互备模式(同时提供不同的服务,心不跳则接管):正常时双机虽然运行不同的服务,但是都互相备份对方运行的服务,当有一台机器出故障时候,另一台机器也会有备份能够运行全部的业务。

双机双工模式:提供相同的服务,当承担的业务量不同,当出故障时候,再承担全部的业务。

 

标签:可靠性,恢复,故障,版本,程序设计,设计,双机,冗余
From: https://www.cnblogs.com/wumingliang/p/17626404.html

相关文章

  • CorelCAD中文版下载-CorelCAD 2021(CAD设计工具) 官方版特色
    CorelCAD是一款CAD软件,可以帮助用户设计和绘制2D和3D图形。它提供了许多功能和工具,包括绘图、编辑、注释、测量和布局等。CorelCAD支持多种文件格式,包括DWG、DXF、DWF和PDF等,可以与其他CAD软件进行互操作。此外,CorelCAD还提供了一些高级功能,例如3D建模、渲染、动画和脚本等,可帮助用......
  • 1可靠性的相关概念
    可靠性是软件系统在应用或系统错误面前,在意外或错误使用的情况下维持软件系统的功能特性的基本能力。可用性是系统能够正常运行的时间比例 软件可靠性 不等于 硬件可靠性复杂性:软件复杂性比硬件高,大部分失效来自软件失效物理退化:软件不存在物理退化唯一性:软件是唯一,每......
  • 数据库设计中的数据字典和平时开发中用到的字典表,有什么区别
    数据字典(DataDictionary):数据字典是数据库设计的一部分,它是一份关于数据库中各种数据元素的信息文档,包括表、列、数据类型、索引、约束、视图等等。数据字典记录了数据库结构的元数据,描述了数据的定义、用途、关系以及数据的业务含义。数据字典通常由数据库管理员(DBA)或设计者创......
  • 基于瑞萨RA6M5的环境监测系统设计
    基于瑞萨RA6M5的环境监测系统设计1.设计简介本项目是基于启明6M5开发板完成了环境监测系统设计,传感器DHT11获取温度湿度的数据;传感器GY39获取光照强度数据;0.96寸OLED屏幕提供显示功能,能够显示传感器数据以及相关信息。编写上位机软件,实现温湿度传感器数据的上报。2.设计框架3.项......
  • 读发布!设计与部署稳定的分布式系统(第2版)笔记30_为部署而设计
    1. 部署行为是系统生命的重要组成部分1.1. 只编写代码是不够的,只要没有在生产环境中运行,一切都不算完成1.2. 要想取得成功,需要早早地频繁部署软件1.3. 设计易于部署的软件非常有必要1.4. 零停机部署就是目标2. 机器与服务2.1. 机器是可配置的操作系统实例2.1.1. ......
  • 基于ssm框架的小区物业管理系统的设计与实现
    随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。小区物业管理系统,主要的模块包括查看首页、个人中心、业主管理、新闻公告管理、楼房信息管理、业主投诉管理、业主报修管理、投诉处理管理、维修回复管理、缴费信息管理......
  • 细谈商品详情API接口设计
    当我们构建电商网站或应用时,常常需要获取淘宝商品的详细信息。为了实现这个功能,我们可以利用淘宝提供的开放平台API接口来获取商品数据。在这篇文章中,我们将学习如何设计一个商品详情API接口,并提供相应的代码示例。首先,我们需要注册淘宝开放平台账号,并创建一个新的应用来获取API访......
  • 细谈商品详情API接口设计
    当我们构建电商网站或应用时,常常需要获取淘宝商品的详细信息。为了实现这个功能,我们可以利用淘宝提供的开放平台API接口来获取商品数据。在这篇文章中,我们将学习如何设计一个商品详情API接口,并提供相应的代码示例。首先,我们需要注册淘宝开放平台账号,并创建一个新的应用来获取API......
  • 11 外观模式 -- go语言设计模式
    外观模式又称为门面模式,它是一种结构型模式。引入外观模式后调用方与多个子系统的通信必须通过一个统一的外观对象进行,外观模式为子系统中的功能接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这些子系统更加容易使用。外观模式的实现代码packagemainimport"......
  • 高质量程序程序设计指南摘录
    编程序就像是在写文章。写文章要求你首先一门语言(如同程序设计语言),要有内容(如同代码),还要有各种工具,如桌子、笔墨等(如同你的工作平台)。文章刚写出来时不能马上交给读者看,还需要排版、校对、印刷和发行(如同代码调试、编译连接和发布)学习一门程序设计语言,并不需要掌握其全......