上午面了个试,面试官问我如果代码出问题了,有脏数据,代码没有报错,也看不到日志,怎么排查问题?
如果是工作人员录入错误的数据,该怎么办?
我回答的是:排查代码的业务逻辑,如果有错误更改一下。如果是录入数据错误,就重新录入正确的数据。这样的问题该怎样回答?
该回答引用chatgpt:
回答问题时,你可以结合以下几个方面来回答关于代码问题和脏数据的排查方式以及处理方法。
1.代码问题的排查:
检查代码逻辑和算法是否正确,确保没有逻辑错误或边界情况没有处理。
检查代码是否遵循最佳实践和规范,例如错误处理、异常处理和日志记录是否正确实现。
使用调试工具,例如断点调试、日志调试等,跟踪代码的执行过程,找出潜在的问题所在。
借助单元测试或集成测试,对代码进行覆盖测试,验证代码的正确性。
如果可能,使用监控工具来监视系统的运行情况,例如监控系统资源使用情况、请求响应时间等,以便发现异常情况。
2.脏数据处理:
针对工作人员录入错误的数据,可以考虑在数据录入环节增加校验和验证机制,以减少数据录入错误的发生。
对已存在的脏数据,可以编写数据清洗脚本或数据修复程序,对数据进行校正、修复或删除。
如果脏数据对系统影响较大,可以考虑回滚到之前可用的数据备份点,或者使用备份数据恢复系统状态。