程序设计原则

合理的业务逻辑设计可以避免80%产生的问题,剩下的20%,则需要一些额外的工作和辅助手动进行处理。

现总结的程序设计的一些原则如下:

  1. 程序内部设计原则
    1. 对于非常严重认为不能容忍的异常,要中断程序;
    2. 对于可以容忍的异常,要进行异常捕获和 error log 的提示。如对redis进行scan,某个key有问题,不应该影响其他的数据的处理;
    3. 程序内部的各个模块的调用,要全面判断返回值,并且进行相应的处理。如shell脚本上传hdfs,若上传失败,则不能够产生SUCCESS标识;

  2. 多Job间的处理原则
    1. 下游要根据上游的约定,相信上游约定的返回的状态码,若最终发现结果和状态码不一致,则让上游修改流程。如离线hdfs有SUCCESS标识,但是没有数据或者数据太少,则应该让上游修改并确保有SUCCESS时,数据是没有问题的。
    2. 下游在使用上游的结果或者数据时,要进行状态码的判断。比如离线数据使用上游数据得进行SUCCESS标识的检查。

  3. HDFS离线数据的监控原则
        如果程序的开发已经遵循了上述的两个原则,仍然有一些难以保证的问题,比如整个业务逻辑设计没有问题,但是数据的内容出现了问题,这个是程序难以cover的,此时,就要对数据进行监控,及时产生报警,更早的发现问题。
        此模块的设计,采用二八原则:
            对于百分之八十的数据监控的方式,尽量采用统一的监控方式,这样将来会有更高的扩展性。比如可以用统一的程序,对hdfs路径的大小进行监控,放入护航(监控平台),由护航产生报警;
            对于百分之二十的数据监控,如果统一监控的方式无法达到目的,则根据具体的业务进行监控设置。若想在数据有问题以后,切断后续流程,则需要单独做任务进行数据检验。

 

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值