工作中遇到的问题
<p>问题:</p>
<pre><code>1.各个引擎或者工具的集成测试没有验证
经常存在原有的场景不支持了,比如之前支持相对或者绝对路径的配置,但是在改代码或者重构中只支持了绝对路径
同时也没有集成测试,导致已有场景或者已经支持的场景出现问题
找不到该配置文件在日志中也不报错,直接按照没有配置的检查了
解决:
对每一次的变更提交代码都需要服务owner或者了解整体的架构师进行评审
小的变更就五分钟,十分钟,开发自己讲改了啥,大家评估下。
-->时间需要保证
这个就是类似团队建设
2.设计和实现不一致,或者是设计欠考虑
导致总是在变,或者是实现了又中途毙掉,导致整天做无用功
在实现之前没有设计,不管是api或者脚本或者是部署,日志打印管理
各方面应该在设计的时候直接考虑所有的这些标准,再去进行编码实现
到了要测试联调的时候才发现方案有问题,之前没有考虑清楚升级顺序之类的细节
解决:
新服务实现或者大的新功能实现的时候,需要评估,按照各个场景都考虑进去,
细化功能的升级流程,记录下来同步后开发,避免理解不一致的情况
3.对业务系统整体了解不足,导致变更影响到其他功能
对系统整体的联系不太清楚,通常牵一发而动全身,可以通过系统的架构文档和设计文档减少这种情况的产生
各个服务的开发都应该对上下游服务和业务有一定的了解,同时可以传承下去
每一次的修改都应该兼容,不兼容的变更要提前识别评估,不能通过用户去发现
针对不兼容的修改:
3.1通过升级策略来避免中断服务或者产生脏数据
3.2建立全量场景或者关键场景的集成测试用例,保证核心业务的正确性
3.3对用户有影响的变更要提前知会
4.持续加班导致
头脑不清晰,操作出问题,需要劳逸结合
一些基本的数据操作之类的少加了斜杠,或者是定位环境问题无从下手,正常的权限问题,环境问题的定位更加耗时,导致恶性循环</code></pre>