当前位置: 首页 > wzjs >正文

淄博网站建设与推广18互联网站做网站程序

淄博网站建设与推广,18互联网站做网站程序,网站优化策略分析,广西南宁市网站制作公司状态机 状态机就是一个对象状态流转的规则。包含:对象状态的枚举有哪些、状态相互流转的条件是什么。 对于一些简单状态的流转,我们直接用代码(如枚举条件判断)实现即可,无需使用服务编排、流程引擎做管理。直接代码…

状态机

状态机就是一个对象状态流转的规则。包含:对象状态的枚举有哪些、状态相互流转的条件是什么。

对于一些简单状态的流转,我们直接用代码(如枚举+条件判断)实现即可,无需使用服务编排、流程引擎做管理。直接代码实现的适用场景是:适合状态数量少(<10个)、流转逻辑简单的场景。

流程引擎

随着业务的扩展,对象状态的流转可能会变得越来越复杂,传统if-else代码会变成「面条代码」,难以维护。

这时候就需要引入流程引擎来做维护,可以通过可视化的页面或者DSL清晰管理。

DSL是指Domain-Specific Language,领域特定语言,例如使用某个中间件,这个中间件自己定义的语法,就是DSL。这种就需要自己学习一套语法,有学习成本。

使用流程引擎的场景或者好处:

  1. 更清晰的维护复杂状态的流转。
  2. 能够对状态流转做持久化,并进行监控,可以有更方便的监控面板。
  3. 可以进行自动重试、超时处理、补偿操作等等。
  4. 业务规则常调整(如新增「预售审核」节点),用引擎可热更新流程定义,避免硬编码发布。

缺点的话就是:

  1. 学习成本高,需要学习一套中间件的DSL语法,以及运行的原理。
  2. 维护成本高,复杂的中间件需要发布应用,维护一个流程引擎应用,还需要维护对应的库表等等。
  3. 增加了耗时,流程引擎对于规则的解析、服务的编排等等,都是有一定的耗时的。

常用的流程引擎中间件有:

  1. Camunda开源版,官方文档:https://docs.camunda.org/manual/7.17/,中文文档:http://camunda-cn.shaochenfeng.com/introduction/
  2. Flowable,官方文档:https://www.flowable.org/Flowable6.3,中文文档:https://tkjohn.github.io/flowable-userguide/
  3. Temporal https://temporal.io/
  4. Conductor https://docs.conductor-oss.org/index.html Netflix开源的
  5. Snaker,轻量级组件,官网已经没了……项目地址:https://github.com/snakerflow-starter/snakerflow-spring-boot-starter

流程引擎选型对比

使用成本
  1. Camunda:中高,需要管理47张表,数据库管理
  2. Flowable:中,需要管理47张表,数据库管理,但是比Camunda简单
  3. Temporal:高,是分布式架构,需维护Cassandra/MySQL + Elasticsearch,运维复杂。
  4. Conductor:中,需管理数据库/Redis,但比Temporal简单。
  5. Snaker:低,没有依赖。
学习成本
  1. Camunda:中,历经考验,网上能找到很多文档学习。
  2. Flowable:中,历经考验,网上能找到很多文档学习。
  3. Temporal:高,国内使用的少,参考资料少;中文学习不友好,全是视频。
  4. Conductor:中高,国内使用的少,参考资料少。
  5. Snaker:中,简单,但是是社区维护。
分布式支持
  1. Camunda:支持嵌入式、容器内、独立部署。
  2. Flowable:支持嵌入式和独立部署。
  3. Temporal:独立部署。
  4. Conductor:独立部署。
  5. Snaker:嵌入式。

嵌入式说明:
在这里插入图片描述
容器内说明:
在这里插入图片描述

独立部署说明:
在这里插入图片描述

可视化支持
  1. Camunda:Camunda Modeler建模工具
  2. Flowable:类似Camunda,需要单独部署Modeler应用;也有IDE的插件。
  3. Temporal:有UI工具。
  4. Conductor:需要支持node14,然后自行在容器上安装UI。
  5. Snaker:支持图形化流程设计。
运行耗时
  1. Camunda:快,基于BPMN 2.0,解析XML有一定开销,但优化后性能尚可。
  2. Flowable:快,Camunda分支,优化了执行引擎,比Camunda稍快。
  3. Temporal: 慢(事件溯源有延迟),基于Event Sourcing,每次状态变更需持久化,但分布式扩展性强。
  4. Conductor: 快(依赖外部存储),任务调度依赖数据库,高负载时可能变慢。
  5. Snaker:最快,纯Java实现,无复杂BPMN解析,适合简单流程。
并发支持(独立部署情况下)
  1. Camunda:中,依赖DB锁。
  2. Flowable:中高,相比于Camunda,优化了锁机制。
  3. Temporal: 高,基于Cassandra/MySQL,横向扩展能力强,适合超大规模。
  4. Conductor: 高,基于Redis/Elasticsearch,任务分片能力强。
  5. Snaker:单机。
稳定性
  1. Camunda:高,企业级,久经考验。有版本灰度发布机制。
  2. Flowable:高,企业级,久经考验。有版本灰度发布机制。
  3. Temporal:极高,有自动故障恢复机制;有版本灰度发布。
  4. Conductor: 高,有版本灰度发布。
  5. Snaker:低,社区维护。
社区活跃度
  1. Camunda:高,企业维护,有付费版。
  2. Flowable:高,企业维护,有付费版,但是开源版维护不及时,主要维护付费版。
  3. Temporal: 中,企业维护,但是国内用的不多。
  4. Conductor: 中,企业维护,但是国内用的不多。
  5. Snaker:低,开源,无官网。

文章转载自:

http://1c16OlAH.pxspq.cn
http://THsme66e.pxspq.cn
http://GcByfdgf.pxspq.cn
http://7eExsDV4.pxspq.cn
http://dlSgRqwz.pxspq.cn
http://0xfmX6JD.pxspq.cn
http://4af34zQQ.pxspq.cn
http://XsJcAYkh.pxspq.cn
http://8uoHaGFA.pxspq.cn
http://vsuCVxpf.pxspq.cn
http://JHg2GPJR.pxspq.cn
http://zEYq3CtL.pxspq.cn
http://W0AlIhOg.pxspq.cn
http://KpyVrLKG.pxspq.cn
http://idYnaMnS.pxspq.cn
http://H2R8mPtK.pxspq.cn
http://0NnZfY98.pxspq.cn
http://CozFZnjT.pxspq.cn
http://UOja23ot.pxspq.cn
http://cUvEbccN.pxspq.cn
http://76e0KB9I.pxspq.cn
http://IADoEeH1.pxspq.cn
http://TuIwZPva.pxspq.cn
http://uyJaZUIc.pxspq.cn
http://xwx6Vxb2.pxspq.cn
http://zmyaN1A8.pxspq.cn
http://sahdhjy6.pxspq.cn
http://Bo8lmea6.pxspq.cn
http://aXsAPI2P.pxspq.cn
http://o5ug8lTO.pxspq.cn
http://www.dtcms.com/wzjs/651575.html

相关文章:

  • 互联网与网站有哪些网页设计的主题分析
  • 怎么学做电子商务网站网站建设指南
  • 没有面板的服务器怎么建设网站销售网站免费模板
  • 广东广州免费建站在建设一个公司网站多少钱
  • 厦门建网站费用一览表浙江网络公司排名
  • 孝感网站开发选优搏wordpress更改登录
  • 装修公司网站建设的意义公共体育课程网站建设
  • 天水市住房和城乡建设局网站礼品做便宜的网站
  • 网站开发报价合同株洲静默三天
  • 胶州做网站京东商城网站的搜索引擎营销做的案例分析
  • 百度网站前三名权重一般在多少晋城网站制作公司怎么选
  • 北京建设部官方网站证书查询三亚发布最新消息
  • 做python一个网站苏州网站建设企业网站制作
  • php网站建设基本流程廊坊百度seo公司
  • 大方泳嘉网站建设怎么在网上找做网站的客户
  • 做烘培网站烟台做网站的价格
  • 深圳福田最大网站公司wex5可以做网站吗
  • 成品网站建设哪家好品牌网图片新闻2003年下一条文章
  • 专门做图片的网站建一个公司网站要多少钱
  • 新余做网站公司asp企业网站设计
  • 重庆网站建设入门培训野望王绩翻译
  • 网站建筑设计网站页面建设需要ps吗
  • 唐山网站建设托管林芝企业网站建设公司
  • 南京市城市建设档案馆网站wordpress 编辑器 代码高亮
  • 深圳企业营销型网站建设上海市住房和城乡建设部网站
  • 自己做的网站是怎么赚钱网址网页网站的区别??
  • 东莞企业营销型网站建设app首页设计效果图
  • 商城网站htmliis7 网站权限
  • 酒店门户网站建设背景广州网站制作方法
  • 玉溪市住房和建设局公布网站微网站做的比较好的