首页 > 其他分享 >design for failure

design for failure

时间:2024-08-08 12:07:15浏览次数:7  
标签:变量 启动 程序 failure design 查单

问题:支付系统缴费成功更新状态慢,
表象 未收到微信支付回调,没有找到日志
解决办法 增加多次主动查单,仍有延时,因为查询单次过多也怕微信封ip,所以查单的时候采用的多次渐进式查单+定时查单
根本原因是 回调部分 关于商户号的存储出现了问题,日志也没记录详尽导致

A程序 有一个内存变量C 在启动的时候需要从B程序读取数据,并写入到A程序
变量C研发环境没有问题,
生产环境有问题
原因是A 和B程序几乎是同时重启,由于A启动的时候B 正好处于不可用状态,导致变量C出了问题
变量C没有做反复检查,

调整办法
A程序启动的时候 启动一个检查线程,每分钟去检查变量C是否正确,不正确的情况下去找B程序重新获取,

总结
设计的时候要多考虑失败的情况,尽可能让程序正确,考虑所依赖的程序可能会故障,如果故障 ,能否自行恢复,恢复时间等

标签:变量,启动,程序,failure,design,查单
From: https://www.cnblogs.com/timevalue/p/18348666

相关文章

  • Altium Designer怎么导入面板设置文件(.TLT文件)
    AltiumDesigner怎么导入面板文件(.TLT文件)文章目录`AltiumDesigner怎么导入面板文件(.TLT文件)``如果对你有帮助,就点赞收藏把!(。・ω・。)ノ♡`最近换新电脑,要将AltiumDesigner移植过去同时要将AltiumDesigner的设置移植过去(比pads强)但是上次移植设置还是在上次忘记怎么......
  • 【PowerDesigner数据建模使用笔记】
    PowerDesigner使用技巧背景思考尝试如何显示表备注、表字段备注从数据库更新到模型注意事项背景使用PowerDesigner来进行数据建模的时候,表属性字段一个个输入有点太过繁琐、痛苦。思考有没其他的更好方式来快速进行数据建模,省去逐个数据表属性的键盘敲打出来呢尝......
  • Ant design pro和umi ui
    #Antdesignpro#在Antdesignpro中umi@4是不支持umiui可视化辅助编程工具(右下角的小球球),umi@3才支持umiui可视化辅助编程工具。在Antdesignpro官网默认使用的是umi@4,想要使用umi@3需要先卸载当前安装的pro-cli,卸载命令如下:npmuninstall-g@ant-design/pro-cli然后......
  • STL and Design Pattern
    DesignPatterns[TODO]0x01.依赖转置原则ref1例如人吃巧克力:publicinterfaceIChocolates{}publicclassOreoimplementsIChocolates{}publicclassDoveimplementsIChocolates{}publicinterfacePerson{voideat(IChocolateschocolates);}上面的例子......
  • INFO6030 - Systems Analysis and Design
    **INFO****6030-****Systems********Analysis********and********Design****Assignment2PartB:SystemD****esign********(30%)****Due:11:59pmFriday2ndAu****gust(Week********12)****Introduction**TheUniversityofNewcastleisreplacingitso......
  • unity报错CommandWithNoStdoutInvokationFailure: Unable to start ADB server.
    这个错误提示表明Unity无法启动ADB(AndroidDebugBridge)服务器,这通常是因为AndroidSDK没有安装或者配置不正确。以下是一些解决这个问题的步骤:确认AndroidSDK的安装:确保你已经安装了AndroidSDK。可以通过AndroidStudio来安装SDK,或者从Android开发者网站下载。配置U......
  • 【原创教程】Microsoft Designer AI绘图进阶教程:第3部分
    在第2部分当中,介绍了基础的Designer操作。那么这一个部分将会介绍一些高级的概念和操作方法。1、隐式提示词(Suggestiveprompts)隐式提示词指的是通过给出一个提示词,而起到同时给出多个提示词的作用。所以它也可以被称之为暗示。我给这个术语制定的英译就带有暗示的意思:Suggest......
  • DDD(Domain-Driven Design)领域驱动设计
    在软件开发中,DDD(Domain-DrivenDesign,领域驱动设计)是一种方法论,它强调在开发过程中将业务领域的知识和规则作为核心。DDD的目标是通过理解和建模业务领域来创建更好的软件系统。本文将详细讲解DDD的基本概念、原则和实践方法。什么是DDD?DDD是一种软件设计方法,它专注于理解......
  • vite5-macos仿macOS网页osx管理系统|vue3+arcoDesign桌面os
    基于vite5.x+vue3+arco-design原创自研网页版os管理框架ViteWebOS。使用最新前端技术vite5+vue3+pinia2+arcoDesign+sortablejs+echarts搭建网页pc版桌面os式后台管理系统解决方案。支持自定义桌面栅格布局引擎、可拖拽桌面图标、多屏分页管理、自定义桌面壁纸主题、毛玻......
  • Vue3-WebOS网页版os系统|vite5+pinia2+arco-design仿macOS桌面os管理
    原创Vue3+Pinia2+ArcoDesign仿macOS桌面网页版os管理系统ViteMacOS。vite5-vue3-macos基于最新前端技术vite5.x+vue3+pinia2+arco.design+sortablejs+echarts构建网页版osx后台管理系统新解决方案。支持windows+macos两种桌面模式、自定义桌面栅格布局引擎、可拖拽式桌面菜单/程......