写点什么

基于云的 BPM 需要 RESTful 服务吗?ZapThink 答说是,引发质疑声不断

  • 2012-03-17
  • 本文字数:1872 字

    阅读完需:约 6 分钟

ZapThink 的分析师 Jason Bloomberg声称基于云的业务流程管理(BPM)软件将会给那些传统的、不能很方便地迁移到云交付模式的BPM 引擎带来颠覆性影响。Bloomberg 这篇文章并没有描述基于云的BPM 所呈现的价值,而是着眼于他的一个断言——任何云BPM 引擎想要正常工作,基于REST 的服务都是必不可少的。但是,来自ebizQ 的Michael Poulin对此有不同看法,他质疑这种无状态的RESTful 服务是否真的必不可少。

BPM 被认为是一种准则,以改进企业业绩为目标,对业务流程进行构建、管理并优化。商用 BPM 软件解决方案通常会提供一个平台对基于流程的应用和业务规则进行建模,还会包含一个运行时引擎执行这些应用。虽然目前有些人质疑是否 BPM 本身就是一个失败,但 Bloomberg 还是看到了 BPM 的价值,只是惋惜其发展空间被那些中间件厂商们所干扰。

厂商都喜欢 BPM,这是因为流程引擎对其中间件堆栈而言,是一个自然的附加软件。协调多个应用也就意味着产生多种集成,那么为此就需要中间件。诸如此类种种吧。不管我们喊多少口号说跨平台的服务组装可以实现厂商独立的流程,但大部分厂商还是都推出了各自专有的一套工具包。

Bloomberg 认为,如果这些厂商觉得他们可以方便地将其产品转换到云上,那么由于其带状态的架构设计,他们将会事与愿违。

这里讲的东西会比较有意思。为了达到云为分布式应用带来的可伸缩性优势,应用层必须是无状态的。云可能需要产生额外的实例来处理加载,并且任何特殊实例都可能崩溃。但由于云是高度可用且分区容忍的,这样的崩溃一定不能影响运行由云实例支持的流程。

这样一来,就没有办法让传统的 BPM 引擎在云上正常运行。毕竟,BPM 引擎 _ 存在的价值 _ 在于维护流程状态,但你不牺牲伸缩性在云实例上就做不到!换句话说,大厂商们所投入的用以构建以 SOA 平台为中心的 BPM 引擎上的全部人力物力现在都白费了。云已经改变了 BPM 的规则。

Bloomberg 认为,基于云的 BPM 解决方案必须用(在客户端和服务器端传递的)消息来维护流程状态。这可以通过使用 REST 超媒体方面的特点并删除客户端与运行 BPM 引擎服务端之间的所有耦合做到。

一旦你仔细想想会发现这个观点的强大是显而易见的,因为 W3 本身就是这样一种运行时工作流的原型样例。你可以想象这样一种工作流:任意一系列的点击链接,然后加载 Web 页面,最终——你所见到的那些页面往往是不同服务器上所提供的各种不同的资源。你看不到一个重量级的、统一的流程引擎。

以【面向超媒体的架构】为基础的 BPM 是一种潜在的颠覆性技术,而它也正面临技术革新的窘境。

虽然对 Bloomberg 上述观点表示赞赏,但 Poulin 提出了他的四段论,对无状态性是基于云的 BPM 解决方案的关键这一断言提出了异议。Poulin 对消息中过度的状态传输持保留态度。

由此可见,如果一个服务以流程的方式实现,那么它可以自由管理其自身状态,可以是有状态的或是无状态的(如果你把服务看成是一个服务工厂,并且你可以按需要来初始化服务,那么你的限制就只会在硬件资源上,而不是服务状态)。在 2008 年就有关于在消息交互中携带流程状态信息的想法,但仍然保持服务的无状态性给很多那些通过服务接口来发送以兆计算消息字节的人很痛苦的失败教训。

我没有看到云伸缩性和运行在云中应用的无状态性之间有任何关联。

一个基于云的 BPM 解决方案能否在没有统一引擎支持、仅仅依赖超链接以及客户端管理状态下成功?Poulin 通过一个理论认证表达了他的顾虑。

好吧,假设我们不做流程处理,而只用链接。比如,我们使用 HTTP 的 GET 和 PUT 方法启动一个流程,这符合“无需流程引擎!”的说法:当流程被触发,一个链接指向规则引擎,并期望返回一个下一步该做什么的说明。那这个说明返回何处呢?规则的请求者是“无状态的”流程,执行响应客户端请求;那么,该说明可能只会返回客户端(记住,流程可能并不维护其状态),并且在这种情况下,返回的说明字节数要足够短,以满足 GET/PUT 方法的要求。接下来,客户端再调用同一个流程(可能不同实例),并把说明传递回(到云中?)“流程”继续执行,以此类推。如果你能够这样就把它推销出去并做成生意,拜托,告诉我一下,让我们来庆祝这桩生意是多么的愚蠢。

Bloomberg 说他的方法对某些人来讲可能有点激进,他反驳说许多基于云的公司都已经在按这种新模式运行。尽管如此,Poulin 建议在把 BPM 这样的东西转移到云之前,业务执行者应该谨慎,并且遵循 Peter Drucker 的建议:

“没有什么比有效地做那些根本不需要做的事更无用的了。”

查看英文原文: Does BPM-in-the-Cloud Require RESTful Services? ZapThink Says Yes, but Doubts Exist.

2012-03-17 04:221803
用户头像

发布了 52 篇内容, 共 19.6 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

智源研究院推出全球首个中文大模型辩论平台FlagEval Debate

智源研究院

保利物业:这样构建数智化,从容超越“内卷之困”

用友BIP

你可能没用过Requests自带重试功能

LLLibra146

python 爬虫 requests

IPQ9574 Alder Dream Main Board: Next-Gen 802.11BE Wi-Fi 7 with OFDMA Support

wallyslilly

ipq9574

携手豆包大模型,创维酷开以AI加速OTT场景智能化

新消费日报

淘宝商品详情数据接口:挖掘电商数据的关键通道

tbapi

淘宝商品详情数据接口 淘宝API接口 淘宝商品详情数据采集 淘宝商品详情数据分析

观赛邀请|春季超音速四强诞生,邀您见证决赛精彩时刻

声网

钉钉x昇腾:用AI一体机撬动企业数字资产智能化

Alter

2024云栖大会资料精选,《云原生+AI核心技术&最佳实践》PPT全量放送!

阿里巴巴云原生

阿里云 云原生

如何利用 StarRocks 加速 Iceberg 数据湖的查询效率

镜舟科技

数据湖 查询优化 iceberg StarRocks

使用Yasboot安装YashanDB的疑惑和建议

YashanDB

yashandb 崖山数据库 yasboot

家居零售企业的数智人力战略升级,用友BIP超级版精选案例

用友BIP

阿里巴巴API与电商创新:商品详情获取的新方法

技术冰糖葫芦

API 接口 API 测试 API 优先 pinduoduo API

高额奖金、校招终面直通卡!北京农商银行2024金融科技挑战赛正式启动!

Geek_2d6073

低至1元/小时:国庆七天,30元通关《黑神话:悟空》!

轶天下事

如何使用ChatGPT API及Bito插件

陆通

1大成果、2个联盟、3大先锋、N个发布!超聚变全方位助力算力强国建设

业界

SD-WAN可以替代MPLS吗?

Ogcloud

SD-WAN 企业组网 SD-WAN组网 SD-WAN服务商 SD-WAN国际专线

同风起,耀星河!华为携手伙伴一起创造无限可能

OpenHarmony开发者

YashanDB Docker镜像制作

YashanDB

数据库 yashandb 崖山数据库

第三方供应商不提供API接口?教你四步破解集成难题

RestCloud

数据处理 API API接口 ipaas

干货 | 日采100W新闻数据,如何实现新闻自动分类

八爪鱼采集器︱RPA机器人

爬虫 数据 采集

国有企业推行末等调整和不胜任退出制度路径指引

用友BIP

原生鸿蒙版江苏智慧人社上架,引领全国政务应用加速鸿蒙化

最新动态

数智化转型进行时:业界共话大模型应用创新实践

Geek_2d6073

实时语音交互,打造更加智能便捷的应用

HarmonyOS SDK

HarmonyOS

人工智能与伦理:如何确保AI应用中的隐私保护

天津汇柏科技有限公司

AI 伦理 隐私保护 AI 人工智能

开课啦!北大-用友CIO/CDO数智化进阶课程正式启航

用友BIP

盛事启幕 | 第三届OpenHarmony技术大会重磅官宣,邀您共绘智联未来

OpenHarmony开发者

OpenHarmony

PKG系统安装包及IPSW固件:MacOS 11-14 正式版

你的猪会飞吗

MacOS 14 Sonoma mac系统下载 mca软件下载

Java如何将Object转换成指定Class对象

EquatorCoco

Java

基于云的BPM需要RESTful服务吗?ZapThink答说是,引发质疑声不断_REST_Richard Seroter_InfoQ精选文章