现在有哪些比较好的开源ESB产品BPM咋同ESB产品集成( 二 )
2、外部应用处理完后调用流程,现在activiti是采用设置流程variable并signal的方式。\u0026lt;flow name="approve-flow"\u0026gt;\u0026lt;jms:inbound-endpoint queue="approveQueue" /\u0026gt;\u0026lt;activiti:set-variable executionIdExpression="#"variableExpression="#" valueExpression="#" /\u0026gt;\u0026lt;activiti:signal executionIdExpression="#" /\u0026gt;\u0026lt;/flow\u0026gt;参见:Integrating Activiti BPM with JMS更多例子:mulesoft/mule-module-activiti-examples 路 GitHubactiviti与camel集成的相关链接:Activiti Forums ? View topichttp://bpmn20inaction.blogspot.com/2011/05/supersize-activiti-with-mule-esb-and.htmlhttp://www.slideshare.net/KaiWaehner/camelone-2012-bpm-beyond-web-servicesCamel - Users不过,感觉现在流程与外部集成的方式不怎么便捷,也不怎么优雅。至少在开源产品上如此,商业产品如何不太清楚。ESB与BPM的集成,其实主要是两种场景:一是BPM需要将流程用各种异构系统来实现,也就是说由系统来实现各种activity或者叫task。这样就需要集成中间件来实现流程引擎与信息系统的连接,比如目前activiti使用mule就是这个用意。另外一种是从集成角度考虑:对于一些复杂的集成场景,单纯的用集成配置中的一些模式已经不够用,特别是在存在并行操作或等待状态的持久化的情况下,David Chapell在他的ESB一书中的第七章对itinerary-based integration与orchestration-based integration进行过对比来说明哪些情况下适合使用流程orchestration。BPEL4WS就是用流程编排的方式来实现web service之间的集成。目前很多BPM也支持BPEL4WS。再进一步的,orchestration关注的是对于进入一个channel的消息的处理方法。而在实际的集成过程中,集成场景未必是简单的request-reply,可能涉及复杂的会话(conversation)。此时,需要在宏观上对conversation进行描述。这个过程在SOA中称为choreography。在实现层面上,一些global的集成约束,比如消息之间的时间间隔或者顺序关系,需要相应的实现在ESB的配置中。这个方面似乎还没有充分的被探索关于conversation,EAI patterns的作者Hohpe认为是EAI的下一个环节。http://www.eaipatterns.com/docs/IEEE_IC_Conversations.pdf他把enterprise中的集成分为messaging、conversation、process和event processing:EIP Visions - Enterprise Integration Patterns
■网友
在ESB中集成workflow还是有一些不错的用例场景的,比如数据的validation, 当出现无效数据时,可以发给工作流,交给特定人员去fix, 又或者由MQ生成tasklist 然后触发工作流来消费这些message
■网友
Apache ServiceMix
■网友
ESB产品本身的最主要产品是集成连接,可以根据技术型的方式,如HTTP,WS,JDBC,MQ,JMS等等。BPM所编排的服务若来自于某个现有系统,而该系统又无法和BPM产品直接整合时,或直接整合在技术上需要做许多事情时,就可以使用ESB在中间搭建连接的桥梁。Bonita Open Solution若只是上面列举的任何技术形式的连接,就可以和ESB产品集成。
■网友
ESB目前选择mule,BPM选择activiti
■网友
如果已经有了bpm,esb一般只作为服务注册以消除点对点集成,对用户甚至是bpm都可以是透明的,大家只要知道有个web服务即可,至于这个web服务是直接暴露在业务系统的进程中,还是统一注册在esb上,那都是架构管理上的事儿,一般不必过于关注。 而实际上,现在大部分的esb包含了部分的bpm功能(人工活动除外),甚至对于要求不太高的信息系统,基于esb做一些包装,即可满足bpm的大部分功能。 开源的esb拿来玩玩还行,不建议真的在实际项目中使用,改造工作太大,还不如自己开发一个,或者买个商业的。
推荐阅读
- 医院|感染艾滋病毒初期有哪些征兆?可以自行检查吗?共用马桶会传染吗
- 玩游戏花钱最多的有哪些游戏,哪些人
- 旅行|需要准备哪些物品?全面冬季出游清单,建议收藏带宝宝出门旅行
- OC为何跌出语言榜前十
- 红米手机通过QQ空间的成功营销,给涉足社会化营销的企业有哪些启示
- 互联网在线音乐行业有哪些可能的盈利模式
- 在上海陆家嘴附近工作,请问去哪边租房会比较好
- 坐标合肥,请问在哪里能捕捉到程序员这种生物他们大都出现在哪里呢
- 直播会成为品牌传播的另一个途径么有哪些可行的方法感觉有戏又没头绪好捉急。
- 设计专业学生上传自己的作品,用哪个网站比较好
