开发中疑难问题经验总结

  解决开发中的疑难问题,是最能体现程序员水平的。开发中的问题,大多数只能呈现表面现象,如何通过表象,使用各种手段,各种工具,各种推测找到问题的根源所在,并提出解决方案。这需要程序员不仅对项目业务很熟悉,对项目代码很熟悉,对各种技术底层原理很熟悉,还需要能够熟练使用各种工具,还要具备推理能力,要大胆猜测,小心验证等心理素质。

  开发中常见问题大致可以分为以下几类:

  • 前端展示问题。前端展示问题容易判断,大多是界面展示异常。
  • 后端异常。主要是后端抛出的异常。可以通过前端弹窗来展现,或者查看日志。
  • 数据库问题。数据不能操作。
  • 网络异常。访问不到。
  • 服务器异常。服务器资源不足,包括硬盘空间不足、内存不足等。

解决问题的思路大致分为以下几步:

  • 判断问题归类。根据问题现象,判断问题是属于哪一类。
  • 问题原因推测。根据现象推测问题出现原因。这个更多的是依靠历史解决问题的经验。
  • 查看问题相关线索。首先应该查看日志,大多数问题日志都会记录,既是没有记录,也能在日志上下文中找到蛛丝马迹。重点关注日志中的报错、入参、出参、sql语句等。前端按F12看前端输出也是一个重要线索。
  • 分析线索,得到问题结论。根据前面的推测和线索,应该可以基本得出问题结论。
  • 使用工具,查明问题。如果前面线索不足以得出问题结论,需要使用其他工具。常见的工具有:Fiddler(http查看工具)、WireShark(网络工具)、Sql Profile(数据库监视工具)、Windbug(Windows下调试工具)、JConsole(JVM监视工具)
  • 不得已调试代码。到最后,所有的手段都使用了还是不能得出问题结论,只有调试代码了。对于已经上线的问题,调试代码很困难,最好能在本地重现问题,再进行调试。调试需要细心,需要密切关注每一步的执行结果。需要掌握常用的调试技巧。
  • 证明推测。

  疑难问题的解决,对技术的深入了解是基础,对各种工具的运用是重要的辅助。

  开发中的疑难问题解决暂时总结到这里,后续再补充。

转载于:https://www.cnblogs.com/leanfish/p/9120826.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值