[本文已于一段时间前发布在TIBCO博客上 。 我还在适当的地方添加了有关BusinessWorks Container Edition(BW CE)的一些信息。 下面定义的大多数特性对于BW6和BW CE均适用。
TIBCO ActiveMatrix BusinessWorks 6(BW6)是一个现代化的集成和服务交付平台,可用于现代概念,例如移动,云,物联网或微服务。 本文一般不介绍集成和服务交付平台,而是重点介绍BusinessWorks 6与市场上其他可用的集成解决方案的区别。 如果要查看TIBCO ActiveMatrix BusinessWorks 6的一般介绍,请解释其基本概念和功能,例如:
- 零编码流程设计器,用于快速实施,测试和维护
- 关键任务系统和超高性能的分布式可伸缩性
- 基于标准的服务和应用程序集成
- 与其他TIBCO产品的现成集成,例如EMS,FTL,ActiveSpaces,BPM,API Exchange,MDM,StreamBase,Live Datamart或BusinessEvents
然后请参阅此处的信息和视频。
并非以下描述的每个功能都是中间件领域的全新功能,即某些功能也可以在其他供应商的平台(或在BusinessWorks 5中)中使用,但是所有这些功能的组合在单个集成解决方案中都是独一无二的,并且使每个用户满意-无论是集成设计师,核心开发人员,测试人员还是管理员。
以下四个部分描述了TIBCO ActiveMatrix BusinessWorks 6与其他集成和服务交付平台相比的不同之处:
- 简便的流程,服务和API实施
- 支持完整的开发生命周期
- 模块化轻量级平台
- 用于集中管理和监视的统一视图
这篇文章还添加了一些有关BusinessWorks Container Edition(BW CE)的信息 ,它是BW6的云原生“抽象”,基于相同的代码库,但已准备好满足云及其特定要求(例如容器支持的部署)。
1)简单的流程,服务和API实施
要快速,敏捷地适应集成问题,必须有简单的流程,服务和API实现。
智能画布
- 与往常一样,您可以将活动(例如,映射器)或连接器(例如,SAP或Salesforce)拖放到工作区。
- 此外,您还可以拖放其他工件。 例如,拖动CSV文件将创建一个弹出窗口,您可以在其中选择多个File活动(例如FilePoller)之一。 此步骤还将自动添加配置,例如文件名。 解析XML架构,将SQL语句发送到关系数据库,调用SOAP / REST服务或BusinessWorks流程以及其他方法也可以实现。
- 因此,映射可以将来自所有先前活动的数据用作输入,而不仅仅是最后一个活动,或者使用诸如将信息存储到变量中的变通方法。
- 智能映射器包括自动完成功能(例如,在函数的不同输入之间添加括号或逗号),自动警告(例如,如果将0用于基于1的数组索引)或快速修复(例如,用于类型转换)。
多操作建模
在大多数工具中,您必须在单个过程中实现每个SOAP或REST服务操作。 在更复杂的服务和项目中,这确实令人困惑。 在TIBCO ActiveMatrix BusinessWorks 6中,可以在一个流程中实施服务的所有操作。 每个操作都可以显示或最小化。 SOAP和REST服务也可以在一个流程实现中实现。 当然,在一个操作中,您可以调用几个不同的REST,SOAP和/或BW进程。
无状态与有状态服务和流程
尽管REST服务根据定义始终是无状态的,但是SOAP服务和BusinessWorks流程也可以是有状态的。 IDE允许您选择稳定的复选框,并使实现状态服务的工作更加轻松,例如,不允许实现REST服务或将状态存储在内存中,而不需要外部持久性存储。 对话功能可创建关联ID,而BusinessWorks引擎可帮助自动关联所有内容而无需进行编码。 对话表示同一过程中两个或多个相关的消息交换,这些交换由引擎关联。 例如,流程与其客户端之间或流程与其后端服务之间的对话。
默认情况下,BusinessWorks Container Edition是无状态的。 您仍然可以“创建状态”(例如,通过将数据写入消息队列或数据库),但是缺少BW6的某些功能,因为BW CE是云原生平台,支持PaaS平台和容器(通常是无状态构建的)。
补偿处理程序和异常处理
事务是复杂的,并且是现代体系结构的反模式,尤其是在分布式系统中。 两阶段提交(aka XA)交易甚至更糟。 许多技术甚至根本不支持交易。 SOA引入了补偿的概念,以在发生异常后还原操作。 BusinessWorks 6提供了补偿处理程序和一个复杂但简单的模型,以使用活动和异常处理程序定义范围。
2)支持完整的开发生命周期
在一个IDE中支持完整的开发生命周期对于敏捷项目很重要。 BusinessWorks 6支持所有阶段,例如基于Eclipse生态系统的开发,调试,测试和部署。
BusinessWorks流程与Java编码的结合
在单个环境中可以进行开发,调试,测试和部署。 使用本机Eclipse功能(例如其源代码编辑器或调试器)无缝地实现BusinessWorks流程和Java代码。 部署,执行和调试可以在本地或在本地或云中的远程服务器上完成。 使用BusinessWorks JUnit插件和Eclipse SDK支持在单元和项目级别的端到端自动化测试。
在设计时和运行时在不同级别上进行配置
应用程序配置文件提供了可定制的替代方案,供您在设计和运行时选择。 可以在运行时通过命令行或Web用户界面配置应用程序属性。 流程变量存在于一个流程实例中,而所有流程实例均具有流程属性。
开放的Eclipse生态系统
BusinessWorks 6 IDE只是具有添加的TIBCO Eclipse附加组件的Eclipse。 因此,这并不是Eclipse之上的完整,缓慢,消耗内存且不灵活的整体。 例如,XML和WSDL编辑器只是“附带”的Eclipse编辑器。 每个Eclipse开发人员都熟悉诸如Java,设计或调试之类的IDE透视图以及诸如Project Explorer,Palette或Problems之类的视图。
您还可以使用Eclipse的Plug-in Development Kit(PDK)及其基于向导的代码生成器,快速,轻松地创建新的连接器和其他附件。 通过标准Eclipse更新站点添加了新的TIBCO和社区连接器。 可以添加任何Eclipse插件(无论是开源的,专有的还是自写的)。 例如:JIRA,Git,Docker,Jenkins,您可以将其命名为…
3)模块化轻量级平台
现在,该是一个“必须提及”的流行语了:微服务。 BusinessWorks 6支持微服务。 或者,我想说的是,“ SOA做对了。” 这可能意味着轻量级平台,对休息服务的一流支持,独立开发和部署,持续集成和持续交付以及云就绪。
一流的REST支持
REST服务的创建非常简单,并且作为一等公民(即观看此5分钟视频 )以开箱即用的方式受支持。 Swagger是一个简单而强大的REST框架,用于测试REST服务。 Swagger文档是自动生成的,并提供给使用BW6构建和部署的所有REST端点。 通过Swagger生成的文档,可以利用TIBCO API Exchange使该REST服务以Open API的形式提供。 当然,BusinessWorks 6和API Exchange也暗含支持诸如SOAP或JMS之类的“旧”标准。
轻巧的平台
TIBCO ActiveMatrix BusinessWorks 6使用可扩展的运行时且硬件占用量少。 每个服务都相互独立地进行管理,部署和扩展。 因此,由于业务需求的变化,新功能,更改请求和可伸缩性可以非常灵活地适应,而无需重新部署完整的应用程序或大型企业档案。 可以将不同的服务部署到单个BusinessWorks引擎,或扩展到几个不同的运行时。
顺便说一句:TIBCO ActiveMatrix BusinessWorks 6应用程序还可以单独包含Java捆绑软件,也可以与BusinessWorks流程结合使用。 这样,Java项目还可以利用BusinessWorks的优势,例如管理,监视或关键任务SLA(例如高可伸缩性或故障转移)。
BusinessWorks Container Edition更轻巧。 这是一个云原生集成平台,可以部署在Cloud Foundry PaaS上 。 重要提示:它与供应商无关! 您也可以将其部署在其他云平台上。 您很快就会看到有关Docker及其相关平台(如Kubernetes或Red Hat的OpenShift)的 公告 !
持续集成和持续交付
现代化软件开发的另一部分(称为微服务,敏捷或其他功能)是持续集成和持续交付,以实现快速发布,错误修复和更改服务请求。 BusinessWorks 6提供了特定的Maven插件(针对BusinessWorks进行了优化),但还支持其他任何框架,例如SVN或Git用于版本控制管理,ANT或Gradle用于构建管理,或Jenkins用于持续集成。 许多客户将TIBCO SilverFabric用于连续交付以及弹性的本地,云和混合部署。 此外,您还可以将Chef , Puppet或Docker等其他工具用作独立框架,或与TIBCO SilverFabric结合使用。
支持移动设备和物联网
BusinessWorks 6为移动设备和物联网的未来做好了准备。 使用移动插件可以将推送消息发送到Apple或Android操作系统等移动设备,并使用Java,ObjectiveC,Swift和其他技术在Mobile Apps中接收推送消息。
TIBCO Expresso允许将普通的旧API转换为消耗性事件API。 有关此插件及其体系结构的更多信息,请参见此处 。
TIBCO FTL插件允许连接到TIBCO的功能,以实现极低延迟的消息传递中间件,从而使您的IT基础架构为物联网做好准备。 每秒可能有数百万条消息。 这就解释了首字母缩写词FTL:“比光还快”。 TIBCO eFTL将TIBCO FTL消息传递扩展到了利用WebSockets的平台,例如Web浏览器和手机。
云就绪
大多数客户仍然使用基于经典服务器或虚拟机的本地部署。 但是,BusinessWorks 6已准备就绪,可以进行基于云和基于容器的开发……无论您是要保留经典策略还是要使用SilverFabric,CloudFoundry,Amazon Web Services等解决方案迁移到新概念(例如私有云,公共云或混合云)否则…是否要在不同阶段使用开发,测试和部署来保持传统的开发生命周期,还是转向微服务,使用Docker进行“容器化”或持续交付/ DevOps。
这也是微服务的基础-无论您关心微服务还是只是个流行语,都可以在以下方面达成一致:微服务= SOA做对了! BusinessWorks 6是实现它的正确工具! 请参阅“ 好的微服务体系结构是否会拼写企业服务总线的灭亡? ”以获取更多信息。
BusinessWorks Container Edition还与PaaS功能本地集成,例如弹性可伸缩性,服务发现,动态分布式配置,中央日志记录或隐式云消息传递(例如Cloud Foundry的用于“内部消息传递” 的NATS )。 因此,您可以立即使用此云原生集成解决方案利用所有这些功能。
4)用于集中管理和监视的统一视图
TIBCO产品(如BusinessWorks,API Exchange,EMS,BusinessEvents,StreamBase,MDM,LogLogic,Hawk等)是松散耦合的,但高度集成。 这不仅适用于开发环境和运行时,还适用于使用TIBCO Enterprise Administrator(通常简称为TEA)进行管理和监视。
适用于所有TIBCO产品的统一Web界面
TEA为大多数TIBCO产品提供了统一的Web界面,用于管理,监视,分析,诊断和治理。 所有产品的用户体验都是相同的-没有不同的布局,菜单或行为。 TEA可以在所有设备上使用,例如Web浏览器,平板电脑或手机。 已经集成了多种TIBCO产品,例如BusinessWorks(BW),企业消息服务(EMS),主数据管理(MDM),Hawk等。
BusinessWorks Container Edition利用您使用的特定PaaS云平台(例如CloudFoundry或Kubernetes)的监视工具。 这样,您可以像统一平台上的其他微服务一样监视BW CE服务。
支持非TIBCO产品
TEA不仅用于TIBCO产品。 开放的API允许为任何其他应用程序创建代理。 例如,Apache Tomcat的代理已经可用。
共享服务
在大型部署中,您可能会很快失去有关所有不同环境,产品和服务的概述。 特定于项目的解决方案视图仅允许对特定项目的相关信息或特定利益相关者的信息进行分类-不仅针对一种产品,而且还可以在一个屏幕上对不同产品(例如BusinessWorks,EMS和Hawk)的组合进行分类。 系统视图是用于管理和监视基础结构或产品安装的另一种分类方法。
BusinessWorks 5的迁移路径
最后但并非最不重要的一点是,对于现有TIBCO客户来说,一个重要的信息是:已有10多年历史的BusinessWorks 5仍将在很长的时间内得到支持。 成千上万的客户在关键任务系统中使用它。 我们的建议是将BusinessWorks 6及其所有出色的新功能用于新项目。 如果您可以创造附加的业务价值或出于技术原因要求,则仅现在才迁移旧项目。
提供了从BusinessWorks 5到BusinessWorks 6的迁移路径,包括自动脚本和最佳实践。 请注意经典的“ 80/20规则”。 并非所有内容都可以自动迁移。 请询问您的TIBCO联系人以获取更多详细信息。
TIBCO ActiveMatrix BusinessWorks 6准备黄金时间
TIBCO ActiveMatrix BusinessWorks 6是领先的集成和服务交付平台。 许多客户已经开始使用它进行新项目。 已经有几个部署在生产中。
BusinessWorks 6是一个适用于移动,云,物联网和微服务的现代平台。 这些功能在单个解决方案中的结合是独特的,并且使每个用户都满意,无论是集成设计师,核心开发人员,测试人员还是管理员。
通过下载BusinessWorks 6评估版或与TIBCO联系人联系以获取当前企业版的下载链接进行尝试。 TIBCO很高兴演示和讨论POC。 接下来将有更多博客文章详细介绍BusinessWorks 6的所有已描述功能。
BusinessWorks Container Edition也已准备就绪,可以作为市场上唯一可用的云原生集成解决方案。 利用其轻量级和云原生API优先方法,并将微服务部署到基于容器的PaaS平台。
这篇博客文章显示了BW6和BW CE在一方面与BW5在另一方面之间的许多差异。 即将进行比较BW6与BW CE的比较详细的文章(并讨论何时使用哪个)。
翻译自: https://www.javacodegeeks.com/2016/04/tibco-businessworks-6-container-edition-compared-bw5.html