🗒️代码腐化|Node如何规避致命错误

type
status
slug
date
summary
tags
category
password
icon

代码腐化

导致问题原因有很多种,比如:时间紧张、业务不熟悉等因素
  1. try catch嵌套导致方法调用链路丢失:
    1. catch 到异常打印 errorMessage,没有堆栈信息
    2. 直接 new 一个 error,放入上一个 error 的 errorMessage,看日志根本找不到问题链路
  1. 不考虑异常或边界条件考虑不足情况:
    1. 对于异常数据的提前终止,如果没有处理会导致排查问题的链路很长
    2. 很多情况下,和高质量代码对比,差异就在异常处理和边界条件判断上;但是这些这些很多都是凭借感觉和业务经验来处理
  1. 关键信息没有打印:
    1. 异常的数据状态,或者业务逻辑(不报错或者不影响关键链路可以用 warn 标识出来)
    2. 正常情况下日志满天
  1. 变量名称、类型、数据库、注释保持上下文通义(多个系统内统一)

    规避致命错误

    1. 异步方法 try catch里面套异步方法
      1. 这种只能够在里面方法处理异常情况,如果里面报错了可能会导致 node 进程退出
    1. 循环中ojb[str] = ‘’ 的 str 为 ‘’空字符串导致 CPU100%
       
      上一篇
      Node CPU100% 问题分析解决
      下一篇
      Node原子计数器
      Loading...
      文章列表
      王小扬博客
      产品
      Think
      Git
      软件开发
      计算机网络
      CI
      DB
      设计
      缓存
      Docker
      Node
      操作系统
      Java
      大前端
      Nestjs
      其他
      PHP