美文网首页
01-代码可控

01-代码可控

作者: 当当一丢丢 | 来源:发表于2020-03-03 15:57 被阅读0次

1.可控、可配置性

1.1场景描述

  • 代码执行逻辑可以实时控制,当不需要执行或者因异常宕机等意外因素需要停止该逻辑时可以实时控制,
  • 比如往es写日志,es磁盘已满或者es宕机时 持续提交es会导致源代码逻辑不断报错,我们可以提供外部开关,通过关闭开关停止逻辑的继续执行

1.2实现方式

  • 1.通过DB
    • 最简单,通过数据库如MySQL 表字段flag标记,flag为true则代码执行,flag改为false则停止代码继续执行
    • 关键需要实时刷新flag字段值,保持实时性,比如通过缓存
  • 2.通过配置中心
    • 比如Apollo
      • Apollo相对DB,Apollo提供了页面UI用于应用配置,以此取代DB中对表数据的直接修改,对DB直接修改在生产环境一般是禁止的
      • Apollo通过推拉的方式自动将更改推给应用

2. 影响范围可控

2.1 问题描述

  • 我们知道,程序会出现各种意外情况从而导致异常,异常会中断程序的正常执行,有些异常我们对其要求不是很苛刻,即不需终止当前程序继续执行,故我们可以对其做捕获(catch)但不抛出异常

2.2 实现方式

  • 1.通过catch处理
try{
  ......
}catch() {
  //值记录错误,但不throw new Exception()等
  log.error(......);
}

相关文章

  • 01-代码可控

    1.可控、可配置性 1.1场景描述 代码执行逻辑可以实时控制,当不需要执行或者因异常宕机等意外因素需要停止该逻辑时...

  • TableView 使用的小技巧

    01-去除tableView plain 样式 SectionHeaderView 的悬浮方法: 代码效果

  • 『代码大全』笔记01-序

    如果不知道为何读书,那你的书也就白读了... 读书之前要明白为啥而读,所选的书是否适合你,你能获取到什么?这些无疑...

  • 拥抱自主可控Linux,如何在中标麒麟上部署活字格低代码开发平台

    在“双循环”的大背景下,企业客户对自主可控的需求越发强烈。为了让更多低代码开发者能够将自己开发的应用部署至自主可控...

  • 算技@Python爬虫-动手做自己的网页

    Python 实战-第 1 周-练习项目01-动手做自己的网页 成果展示 代码 贴代码如下。同时放在 GitHub...

  • pthread_mutex_t 互斥锁

    如果多个线程要同时访问(读和写)一个资源,资源的同步性和有效性就不可控。比如以下代码 输出结果就不可控,如下: ....

  • flow中文文档(一)

    1.什么是flow Flow是javascript代码的静态类型接触的一个工具。它可以使你的代码更有效率、更可控、...

  • 解决TextView 中drawableleft 图片大小不可控

    解决TextView 中drawableleft 图片大小不可控问题 关键代码 使用效果 用法 属性值设定 自定义...

  • 可控和不可控

    因为安全感的缺失,一般,大家都喜欢可控的东西。 比如找工作,会担心: 能不能融入团队?会不会有办公室政治?不知道...

  • 可控与不可控

    可控是一种结果,也是一个过程。说明准备充分,万事周到。就算有预料之外之事,也有应对之策。 一旦事情到了不可控的地步...

网友评论

      本文标题:01-代码可控

      本文链接:https://www.haomeiwen.com/subject/bqdhlhtx.html