业务中台建设 微服务 流程编排: Uber Cadence | Netflix Conductor | Camunda Zeebe | AWS Step Functions | ingbank baker

摘要:
例如,电子商务绩效流程包括许多环境,如包装、发票生成、物流和运输、收据、货到付款等。自营仓库需要发票,但企业没有此限制。例如,体验业务线:物流运输、收货、货到付款和发票生成。在中间办公室的设计过程中,通过策略、回调、插件包、流程编排和DSL脚本来实现业务的定制需求。FORM=U227DF&PC=U227&q=aws%2Fset+functionsAWSStepFunctions入门|ServerlessMicrosoftServiceOrchestration|Amazon WebServiceshttps://aws.amazon.com/cn/step-functions/getting-started/AWSStepFunctions可视化工作流服务_分布式应用程序管理-AWS云服务https://aws.amazon.com/cn/step-functions/?FORM=U227DF&PC=U227&q=uber%2FcadenceUberCadence学习-poslua|ms2008Bloghttps://ms2008.github.io/2021/06/06/cadence-intro/uber-common/cadence-sampleshttps://github.com/uber-通用/节奏示例UberCadence示例-宾厄姆的国内版本ageshttps://cn.bing.com/images/search?

业务中台建设 - 配置化 - 知乎
https://zhuanlan.zhihu.com/p/339088254

流程编排
中台服务中的业务步骤进行抽象沉淀形成固定的模块,不同业务基于自身的业务场景,对现有的模块进行重组,从而满足自己的需求。

例如 电商履约流程中包含:打包、发票生成、物流运输、签收、货到付款等等很多环境,自营仓库需要发票,商家业务则没有这个限制。不同的业务线需要的步骤也是不同的,把这些步骤都抽象成标准的步骤,各业务进行拼装组合。例如

体验业务线:物流运输、签收、货到付款、发票生成。
自营商城线:打包、发票生成、物流运输。
具体实现方式可以参考

uber/cadence
分布式、伸缩、高可靠的异步执行业务逻辑,工具比较丰富,同时提供了可视化UI

netflix/conductor
来自netflix 的为微服务编排引擎,支持的功能很丰富,同时文档也比较全

zeebe-io/zeebe
实际上是在工作流引擎的基础上衍生出来的,设计很灵活,不需要依赖后端的存储,支持复制、分片(借鉴了kafka)

ing-bank/baker
scala 开发的微服务调度框架

aws/setp functons
aws 的云服务

DSL脚本
DSL全称为domain-specific language,指的是专注于某个应用程序领域的计算机语言。对于需要非常灵活扩展的地方,可以通过DSL脚本满足一定的需求,例如 复杂的结算规则,根据商家、业务等区别,适用不同的规则

def detail_price alias '详情价格'
def transport_fee alias '运输费'
def check_fee alias '检测费'
def service_fee alias '服务费'

if(详情价格>10000){
return (详情价格+运输费+检测费+服务费);
}else{
Return (详情价格+(运输费+检测费+服务费)*0.8);
}
总结:
框架在架构设计上遵循一个重要的设计原则叫“依赖倒转原则”,依赖倒转原则是高层模块不能依赖低层模块,它们应该共同依赖一个抽象,这个抽象由高层模块定义,由低层模块实现。

中台的设计过程中通过策略、回调、插件包、流程编排和DSL脚本等方式,实现业务的定制化需求。

aws/setp functons - 国内版 Bing
https://cn.bing.com/search?FORM=U227DF&PC=U227&q=aws%2Fsetp+functons

AWS Step Functions 入门 | Serverless Microservice Orchestration | Amazon Web Services
https://aws.amazon.com/cn/step-functions/getting-started/

AWS Step Functions可视化工作流服务_分布式应用调节-AWS云服务
https://aws.amazon.com/cn/step-functions/?step-functions.sort-by=item.additionalFields.postDateTime&step-functions.sort-order=desc

Step Functions Workflow Studio USI Mock.e04623598b8abf438fc8c9f6576384b6eaf09dd4.png (2902×1731)
https://d1.awsstatic.com/Step Functions Workflow Studio USI Mock.e04623598b8abf438fc8c9f6576384b6eaf09dd4.png

Baker
https://ing-bank.github.io/baker/

github.com
https://github.com/ing-bank/baker

Netflix/conductor: Conductor is a microservices orchestration engine.
https://github.com/Netflix/conductor

uber/cadence - 国内版 Bing
https://cn.bing.com/search?FORM=U227DF&PC=U227&q=uber%2Fcadence

Uber Cadence 学习 - poslua | ms2008 Blog
https://ms2008.github.io/2021/06/06/cadence-intro/

uber-common/cadence-samples
https://github.com/uber-common/cadence-samples

Uber Cadence Samples - 国内版 Bing images
https://cn.bing.com/images/search?view=detailV2&ccid=ZyUVhDqI&id=06F69D8C9E99D7C2CB51049E66B730D85B412D4A&thid=OIP.ZyUVhDqI8IPblOS2RzficAHaFm&mediaurl=https%3A%2F%2Fcednc.org%2Fwp-content%2Fuploads%2F2019%2F11%2FProcess_Cadence-Slide-1-3.png&exph=526&expw=695&q=Uber+Cadence+Samples&simid=608046165337209160&form=IRPRST&ck=496C6B8E5B9A825EA36285038A9EE338&selectedindex=7&ajaxhist=0&ajaxserp=0&vt=0&sim=11

image4-1.png (1224×486)
https://1fykyq3mdn5r21tpna3wkdyi-wpengine.netdna-ssl.com/wp-content/uploads/2019/03/image4-1.png

uber/cadence:Cadence是一种分布式,可扩展,持久且高度可用的流程编排引擎
https://www.jdon.com/53097

Cadence Multi-Tenant Task Processing
https://eng.uber.com/cadence-multi-tenant-task-processing/

深入浅出Netflix Conductor使用 - 简书
https://www.jianshu.com/p/4eae1af8afa8

conductor介绍 - 会飞の鱼 - 博客园
https://www.cnblogs.com/mhc-fly/p/6956305.html

conductor 子流程 - 国内版 Bing
https://cn.bing.com/search?FORM=U227DF&PC=U227&q=conductor+子流程

Netflix Conductor:流程的反转控制-Linuxeden开源社区
http://www.linuxeden.com/a/5432

Netflix Conductor:流程的反转控制-InfoQ
https://www.infoq.cn/article/netflix-conductor-introduction/

免责声明:文章转载自《业务中台建设 微服务 流程编排: Uber Cadence | Netflix Conductor | Camunda Zeebe | AWS Step Functions | ingbank baker》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇mysql 5.7安装教程Windows程序运行原理 之 WNDCLASS详解下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Linux32_配置vncserver

linux上配置vnc服务器,可以方便我们在windows电脑中使用vncviewer客户端对linux进行远程桌面。这样就可以在windows桌面操控linux电脑了; 效果图如下: 接下来讲解实现步骤: 1、在linux电脑上安装vncserver,输入指令:yum install -y tigervnc-server 2、这时候以root用户进行这...

python爬虫之Splash使用初体验

Splash是什么: Splash是一个Javascript渲染服务。它是一个实现了HTTP API的轻量级浏览器,Splash是用Python实现的,同时使用Twisted和QT。Twisted(QT)用来让服务具有异步处理能力,以发挥webkit的并发能力。 为什么要有Splash: 为了更加有效的制作网页爬虫,由于目前很多的网页通过javascrip...

Nginx上部署HTTPS + HTTP2

  Nginx上部署HTTPS依赖OpenSSL库和包含文件,即须先安装好libssl-dev(或者OpenSSL),且ln -s /usr/lib/x86_64-linux-gnu/libssl.so  /usr/lib/,然后在编译配置Nginx时要指定--with-http_ssl_module和--with-http_v2_module。另外,若要...

折腾前端条形码(Barcode)扫描识别, 笔记

barcode @zxing/library 方案 本地勉强把 Demo 在 React 里面跑通, 但是不好控制开始结束, API 不明确.实际识别率很低. 我是用手机屏幕放的条形码, 大概也有影响. https://github.com/aleris/zxi...https://github.com/zxing-js/l...https://gith...

svn

SVN Unable to connect to a repository at URL (2012-10-16 15:48:56)转载▼ 标签: svn 缓存 杂谈 分类: SVN 背景: 1.SVN服务器:VisualSVN-Server-2.5.5; 2.SVN客户端:TortoiseSVN-1.7.6.22632-x64-svn...

idea双击打不开没反应的解决办法

   原文链接:https://www.cnblogs.com/jiazibo/p/14618483.html 网上找了很多方法最后才找到一个可以解决的,如果遇到的问题与我这个相同可以用这个方法解决 1.打开idea安装根目录bin下,选中idea.bat右键编辑,或者使用txt打开 2.在idea.bat最后一行添加 pause  如图   3....