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

国外有个专门做病毒营销网站seo关键词排名报价

国外有个专门做病毒营销网站,seo关键词排名报价,长沙电商运营公司排名,用Python完善wordpress状态机 状态机就是一个对象状态流转的规则。包含:对象状态的枚举有哪些、状态相互流转的条件是什么。 对于一些简单状态的流转,我们直接用代码(如枚举条件判断)实现即可,无需使用服务编排、流程引擎做管理。直接代码…

状态机

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

对于一些简单状态的流转,我们直接用代码(如枚举+条件判断)实现即可,无需使用服务编排、流程引擎做管理。直接代码实现的适用场景是:适合状态数量少(<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://www.dtcms.com/wzjs/328504.html

相关文章:

  • 网站建设 体会seo优化收费
  • 武昌做网站关键词优化推广公司哪家好
  • 网站建设维护协议百度浏览器网址大全
  • 价格划算的网站开发新闻营销发稿平台
  • 宿迁企业网站建设站长工具seo综合查询降级
  • 中国最大的建材网站北京百度搜索排名优化
  • 网站制作心得体会200字百度竞价优缺点
  • 日本网站做任务网络营销概述ppt
  • 个人做网站的流程seo服务靠谱吗
  • 网站前置审批项 教育无线网络优化工程师
  • 好的网站分享nba最新消息交易
  • 网站设计开发文档模板河南网站设计
  • 潍坊网站建设 马淄博seo网站推广
  • 济南市历下区建设局官方网站培训课程网站
  • 网站建设好的乡镇系统优化的方法
  • 武威网站建设公司有公司网址怎么制作
  • wordpress 博客 视频苏州关键词优化排名推广
  • 网站开发费分摊多少年网站设计公司网站制作
  • 做网站需要流程seo优化关键词分类
  • 一般招聘网站有哪些自己搭建一个网站
  • 公司做网站b2b吗策划方案模板
  • 山东建设科技产品推广网站推广赚钱平台有哪些
  • 沈阳哪里做网站杭州seo全网营销
  • 网站建设it网站建设介绍ppt
  • 外贸网站建设网络公司b站推广网站入口2023的推广形式
  • 贵金属如何用网站开发客户公司网站域名续费一年多少钱
  • 地下城做解封任务的网站赣州网站建设
  • 毕业设计做旅游网站搜索引擎分析论文
  • 做软件工资高还是网站百度热门排行榜
  • 如何用电脑做网站服务器腾讯朋友圈广告怎么投放