欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

程序设计原则

程序员文章站 2024-01-15 17:01:04
...

合理的业务逻辑设计可以避免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路径的大小进行监控,放入护航(监控平台),由护航产生报警;
            对于百分之二十的数据监控,如果统一监控的方式无法达到目的,则根据具体的业务进行监控设置。若想在数据有问题以后,切断后续流程,则需要单独做任务进行数据检验。