zoukankan      html  css  js  c++  java
  • 热词分析中运用可用性战术

    一、可用性的简介

    1. 定义:组织错误发展成故障,把错误影响限制在一定范围内,使系统恢复成为可能。

    2.一般场景生成

    在去除服务器维护时间以外,基本可以保证每天24小时均是可用。服务器的维护时间,每次维护从检测到服务器故障到服务重启进行正常提供服务。

    3.分类

    战术分为:错误检测、错误恢复、错误预防。

        ① 错误检测

    命令/响应:一个构件发出一个命令,并希望在预定义的时间内收到一个来自审查构件的响应,例如远程错误的检测。

    心跳(计时器):一个构件定期发出一个心跳消息,另一个构件收听到消息,如果未收到心跳消息,则假定构件失败,并通知错误纠正构件。

    异常:当出现异常时,异常处理程序开发执行。

        ② 错误恢复

    表决:通过冗余构件(或处理器)与表决器连接,构件按相同的输入及算法计算输出值交给表决器,由表决器按表决算法(如多数规则)确定是否有构件出错,表决通常用在控制系统中。

    主动冗余(热重启、热备份):所有的冗余构件都以并行的方式对事件做出响应。它们都处在相同的状态,但仅使用一个构件的响应,丢弃其余构件的响应。错误发生时通过切换的方式使用另一个构件的响应。

    被动冗余(暧重启/双冗余/三冗余):一个构件(主构件)对事件做出响应,并通知其他构件(备用的)必须进行的状态更新(同步)。当错误发生时,备用构件从最新同步点接替主构件的工作。

    备件:备件是计算平台配置用于更换各种不同的故障构件。

    状态再同步:主动和被动冗余战术要求所恢复的构件在重新提供服务前更新其状态。更新方法取决于可以承受的停机时间、更新的规模及更新的内容多少。

    检查点/回滚:检查点就是使状态一致的同步点,它或者是定期进行,或者是对具体事件做出响应。当在两检查点之间发生故障时,则以这个一致状态的检查点(有快照)和之后发生的事务日志来恢复系统(数据库中常使用)。

     ③ 错误预防

    • 从服务中删除:如删除进程再重新启动,以防止内存泄露导致故障的发生。

    • 事务:使用事务来保证数据的一致性,即几个相关密切的步骤,要么全成功,要么都不成功。

    • 进程监视器:通过监视进程来处理进程的错误。

    二、可用性战术运用

    1.错误检测——try/catch模块代码的应用

    在系统开发时要注重更多的使用try/catch模块,当出现宜昌市要及时进行捕获并给出提示,避免在系统运行时出现一些404、500等不好的界面,系统崩溃,比如在数据库进行连接时,运用try/catch检测连接数据库部分是否成功。

    2.错误预防

    可视化展示中的错误预防,我觉得就是避免展示界面不完整,数据展示出错等的错误预防,在这一部分,在编写代码时可以在数据从数据库传值时判断是否正确并输出,然后再传到界面进行展示。

    3.自动恢复

    关于这个可视化展示的自动恢复,我觉得应该就是在展示界面用户进行刷新等问题,想到了12306系统崩溃得最主要原因就是访问得用户数量过多,请求刷新传值得次数太多,造成系统崩溃,而在网课学习期间,不少学习软件也出现了这样得情况,所以,在自动恢复方面,我觉得如果把这个服务搭建在远程服务器上首先考虑的就是这个问题,要展示一个十分友好的错误提示耐心等待界面,然后进行系统的恢复。

    在自动恢复中,本系统我觉得最应该注意的就是数据库或系统代码的备份工作,以防发生意外是进行恢复

  • 相关阅读:
    末学者笔记--KVM虚拟机管理(2)
    末学者笔记--OpenStack介绍(1)
    末学者笔记--openstack共享组件:rabbitmq(3)
    末学者笔记--KVM虚拟化(1)
    末学者笔记--Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署静态网站
    末学者笔记--Gitlab(二)
    末学者笔记--Git介绍(一)
    末学者笔记--Python模块
    末学者笔记--Python函数三玄
    末学者笔记--Python函数二玄
  • 原文地址:https://www.cnblogs.com/Qi77/p/12398505.html
Copyright © 2011-2022 走看看