• 一种基于特性开关以及规则的软件开发模式


    以下是一些简单的思考

    一般开发模式

    • 参考图

    • 说明

    我们提供多种api 实例,通过强大的规则以及路由能力提供api 以及数据的处理

    基于rule 模式的

    • 参考图

    • 说明 
      将业务处理使用rule 解耦,同时提供了多实例的副本,其中rule 可以加入审计以及可视化展示,注意此图没有使用特性开关 
      对于复杂的处理我们还是需要依赖强大的路由能力解决(当然可以解决我们大部分的复杂业务问题)

    基于rule+ Feature Flags

    • 参考图

    • 说明 
      api 的版本都是一致的,对于复杂业务处理基于rule,同时包含了审计以及dashboard,同样还是利用了强大的路由能力。 
      好处:版本一致,可以全局灵活的调整业务api以及功能的处理,对于复杂业务基于rule处理增强了业务的处理

    说明

    一些实践,特性开关不同语言的实现还是比较多的,java 的ff4j是一个不错的选择,java 的easy-rules 是一个简单、灵活的规则 
    引擎(drools 也是不错的)

  • 相关阅读:
    ajax参考增删改查
    linux 断网 扫描基本命令
    linux 基本命令大全
    开发者用的linux系统推荐
    python DRF获取参数介绍
    python DRF操作流程
    python 异常处理函数--raise
    DRF-Rest_Framework 学习文档
    前端框架VUE
    python Django rest-framework 创建序列化工程步骤
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/12734812.html
Copyright © 2020-2023  润新知