gpt4 book ai didi

java - 什么时候应该让应用程序因为 Java 中的异常(设计问题)而崩溃?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:22:25 26 4
gpt4 key购买 nike

<分区>

在大多数情况下,可以在 Java 中捕获异常,甚至是未经检查的异常。但是,不一定可以对此做些什么(例如内存不足)。

对于其他情况,我试图解决的问题是设计原则问题。我正在尝试建立一个设计原则或一组规则,指示何时应该放弃异常情况,即使它被及时检测到。目标是尽量不让应用程序崩溃。

是否有人已经就此集思广益并进行了交流?我正在寻找特定的通用案例和可能的解决方案或经验法则。

更新

到目前为止的建议:

  • 如果数据一致性受到损害则停止运行
  • 如果数据可以删除则停止运行
  • 如果您对此无能为力(内存不足...),请停止运行
  • 如果关键服务不可用或变得不可用且无法重启,则停止运行

  • 方法/服务应该检查它是否可以从稳定状态执行任务,如果不能,它应该通知用户(日志)并且什么都不做

  • 如果必须停止应用程序,请尽可能优雅地降级
  • 在数据库事务中使用回滚
  • 自定义异常可用于提示处理程序如何解决问题
  • 尽可能多地记录相关信息
  • 通知开发者
  • 尽可能保持状态和数据的一致性

  • 快速修复可能有害,在调试时,最好让应用程序崩溃并详分割析导致它的原因

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com