|
决策生命周期管理
您的决策不是静态的,基于您的业务及实施方法,决策通常有一个生命周期,比如:
· 构思
· 建模
· 实施
· 测试
· 优化
· 上线
· 然后您可能返回实施阶段,因为需求的变化,环境的变化,您需要不断提升您的决策
这些阶段各不相同,但生命周期总是存在的。
SMARTS允许您高效的管理决策的生命周期:
· 为不同的阶段定义不同的工作区,每个阶段都有自己的一组用户,这些用户可以相应地访问自己的工作区,完成其负责阶段的工作任务。
· 允许您创建项目版本(Release)-即只读、不可修改的决策视图-对决策状态进行跟踪。
· 允许您将决策从一个工作区发布到另一个工作区,快速地将决策从一个阶段移动到另一个阶段,使其他用户可以在下一个阶段对其进行操作—例如,在开发决策后进行测试。
生命周期管理,可以由具有适当角色的用户在web界面控制,也可以通过AutoSMARTS工具以API方式通过接口来控制。
假设您配置了SMARTS的跨服务器实例自动主从同步,您不需要在不同的服务器中进行工作区的发布,在主节点中的发布,自动会复制到从节点的发布。
SMARTS决策项目可以通过多种方式集成到您的应用系统中,您可能会使用其中一种或多种集成方法。
在大多数情况下,客户会选择灵活的决策服务部署方法。决策服务允许您:
· 松耦合方式部署决策-所有交互都是通过JSON报文,调用HTTPS(REST)服务进行的
· 通过部署管理器部署决策
决策部署支持弹性升缩和高可用性。通常,您将在负载均衡后部署多个SMARTS实例,以确保弹性伸缩和高可用性。
以上面的设置为例(不管是Linux或是Windows服务器)
· 您不会有单点故障
· 即使2/3的服务器停机,也不影响生产运行
· 开发对生产没有影响
· 通过添加更多SMARTS实例,可以实现高可用和弹性升缩
· 通过用户界面或API接口进行决策热部署更新,更新是原子化地,不需要停机时间
· 调用是基于token的,token访问的有效性通过部署管理器进行管理
一旦部署,您就可以实时监控您的决策行为:
· 在系统层面,可以使用以下方式进行监控
· 决策服务统计
· 决策服务调用度量和执行跟踪
· 服务器日志
· 在业务层面,使用实时度量指标进行监控
在某些情况下,您可能希望决策服务不要和决策资料库绑定。比如,您可能希望决策开发环境与线上调用环境完全隔离,或是您希望决策部署完全有IT部门来掌控。
SMARTS允许您将决策文件发布成容器镜像的方式进行部署。通过web用户界面即可轻松完成这种部署,部署的结果是:
· 自动生成决策文件
· 自动生成将决策文件关联至容器镜像的组件
· 自动触发容器集群编排工具(例如Kubernetes或Swarm)部署决策服务
生命周期管理
此外,您还可以将决策部署为组件。组件是一组代码文件包,您可以与应用程序紧密集成,并通过接口与之交互,该接口不涉及网络、身份验证、安全性等。
· 您可以将决策资料库中的决策逻辑导出生成组件
· 您可以通过Java或.NET API将组件集成到其他应用程序中
决策组件部署主要用于需要大规模批量处理,并且联网成本很高的场景。
SMARTS为相同的决策逻辑提供了以上这些不同的部署模式:您可以在任何时候同时使用多个部署模式,或者随着企业的发展而切换部署模式。