TIBCO产品的微服务和DevOps

如今,每个人都在谈论微服务。 您可以在数百篇文章和博客文章中读到很多有关微服务的信息。 马丁·福勒Martin Fowler )的文章是一个很好的起点,该文章引发了有关这种新架构概念的大量讨论。

另一个很棒的资源是独立于供应商的分析师Gartner的免费按需在线研讨会:“ 下车企业服务总线 ”。 它甚至没有提到“微服务”一词,而是解释了其基本动机和概念。

术语“微服务”的定义

这是我对“微服务”一词的简短定义,以及它与“经典”面向服务的体系结构(SOA)的区别:

  • 不承诺采用独特技术
  • 更大的架构灵活性
  • 具有产品生命周期的产品管理服务
  • 工业化部署

那就是微服务时代的开始:服务实现了一组有限的功能。 服务是独立开发,部署和扩展的。 这样,您可以缩短获得结果的时间并提高灵活性。

微服务和TIBCO

有趣的是,已有数家TIBCO客户已经实施微服务多年。 这篇博客文章解释了如何使用TIBCO产品创建微服务。

主要产品包括用于创建微服务的TIBCO ActiveMatrix BusinessWorks ,用于管理和监视的TIBCO企业管理员(TEA) ,用于持续集成和持续交付(DevOps)的TIBCO Silver Fabric ,以及作为服务网关和自助服务门户的TIBCO API Exchange

下面显示了如何与其他技术(例如Java,Python,Scala),产品(例如Oracle,SAP,Salesforce),构建工具(例如Chef,Puppet,Docker)或基础架构结合使用TIBCO创建微服务的基本思想。 (例如,亚马逊云,VMWare,OpenStack)。

微服务_1

侧面节点:请注意,产品只是故事的一部分。 组织变更也是必需的。 Adrian Cockcrof(Netflix的前架构师)就组织变革做了很多精彩的演讲:“微服务的最新技术 ”。

现在,让我们看一下这些产品,这些产品可以帮助您以快速,灵活的方式构建,部署,运行和监视微服务。

TIBCO ActiveMatrix BusinessWorks,用于创建微服务

TIBCO ActiveMatrix BusinessWorks是一个企业集成和服务交付平台。 使用您选择的技术(例如Java,脚本,BusinessWorks流程或其他任何东西)构建自己的微服务,或将现有实现公开为微服务。 如果您需要实施复杂的集成方案,包括业务流程,路由或B2B集成(例如SAP或Salesforce),BusinessWorks是最佳选择。

微服务的公开通常是使用REST或SOAP标准接口完成的。 JMS可以在启用事件的环境中使用。

微服务_2

您还可以使用BusinessWorks将逻辑从多个微服务组合到组合,或将现有的(微)服务扩展到移动应用程序。

TIBCO API Exchange,用于通过API公开您的微服务

TIBCO API Exchange用于通过REST,SOAP或JMS公开微服务,包括基于策略的API管理功能,例如安全性,节流,路由和缓存。 此外,还提供了一个门户,可以轻松地自助使用微服务。 在微服务的上下文中,API Exchange用于执行消费合同,确保微服务的Y伸缩性和可靠性以及在多个上下文中重用微服务而无需更改。

微服务_3

“ SOA的新前沿-开放API和API管理 ”更详细地解释了术语“开放API”,并给出了有关API管理解决方案的组件的技术概述:网关,门户和分析。

TIBCO银纤维用于持续集成和持续交付(DevOps)

自动化是敏捷,灵活和高效的微服务开发的关键。 没有持续集成/持续交付(DevOps),您将无法有效地实现微服务概念。

TIBCO Silver Fabric用于在内部或云端连续部署,配置和管理您的应用程序和中间件。 它通过仪表板提供端到端脚本,自动化和可见性,并监视已部署应用程序的质量,端口管理和弹性负载平衡。

TIBCO Silver Fabric提供了多种现成的功能,可以以DevOps样式运行项目。 此外,它还支持Chef,Puppet和Docker等工具。 您可以在任何地方部署微服务,包括私有数据中心,虚拟机和云环境-支持诸如Amazon Web Services,VMWare或OpenStack之类的环境。 需要了解的重要一点是,每个微服务都是独立于彼此构建和部署的。

TIBCO企业管理员(TEA)进行统一管理

统一管理和监视是微服务成功的另一个关键因素–无论使用哪种技术来实现不同的微服务。

TIBCO企业管理员(TEA)是一个统一的图形用户界面(加上外壳程序和脚本API),用于管理,监视,治理,诊断和分析大多数TIBCO产品,例如BusinessWorks,EMS,SilverFabric,Hawk或PolicyDirector。

微服务_41

TEA还可以用于其他非TIBCO技术和产品,例如现成的Apache Tomcat。 如果尚不支持某些功能,则可以使用TEA的API进行快速集成。 BusinessWorks 6和TEA是非常开放的产品,鼓励TIBCO社区开发其他功能。

TIBCO复杂事件处理和流分析,可跨微服务进行可视性

最后,在生产环境中部署和运行微服务后,您可以使用TIBCO StreamBase CEP之类的工具来组合事件,上下文和大数据洞察力,以实现即时感知和响应。 不同事件的关联才是真正的力量–向Google,Amazon或Facebook的人询问此主题……由于这有点题外话,我仅将您引向一篇文章,其中详细介绍了事件处理和流分析,并讨论了几种实际的用例: 使用Hadoop和数据仓库在大数据世界中作为实时游戏规则改变者进行实时流处理 。

TIBCO和微服务是朋友和奸商,而不是敌人!

如您所见,TIBCO产品已准备就绪,可以创建,部署,运行和监视微服务。 ActiveMatrix BusinessWorks,API Exchange和Silver Fabric等产品是为微服务时代设计的。 实际上,尽管过去这种概念除了SOA之外没有其他特定名称,但实际上已有数家TIBCO客户使用这种方法。 那么,微服务是SOA的新名称,还是新的名称? 谁知道……无论如何,您也应该开始考虑使用微服务方法!

翻译自: https://www.javacodegeeks.com/2015/01/microservices-and-devops-with-tibco-products.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/360948.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

三层结构

三层结构: 1.UI层,表示层;负责界面,也就是我们看到的前台的东西,最直观的东西都在这里实现; 2.BLL层,业务逻辑层,负责软件的业务逻辑,逻辑代码在这里实现; 3.…

antd listView中onEndReached()失效

antd listView中useBodyScrolltrue会导致onEndReached()失效

使用Degraph管理软件包依赖关系

软件开发领域的很大一部分是使系统的复杂性尽可能地低。 但是复杂性到底是什么? 虽然确切的语义有很大不同,但取决于您询问的人,大多数人可能都认为这与系统中部件的数量及其交互有很大关系。 考虑太空中的大理石,即行星&#xf…

[转载] 应急管理体系及其业务流程研究

转载于:https://www.cnblogs.com/6DAN_HUST/archive/2013/03/04/2942337.html

div中直接绑定富文本值

<div dangerouslySetInnerHTML{{ __html: ${currentGoods.ShortDescription} }}/>

[转载]创建数据库与完成数据添删改查--第一种写法

<?xml version"1.0" encoding"utf-8"?><manifest xmlns:android"http://schemas.android.com/apk/res/android"package"cn.itcast.db"android:versionCode"1"android:versionName"1.0" ><uses-s…

微信公众号网页开发:播放视频,在列表中滑动会脱离文档流

项目场景&#xff1a; antd移动端端开发微信公众号移动端网页开发 问题描述&#xff1a; video-react有问题&#xff0c;在跑马灯中第一次白屏&#xff0c;在列表中滑动会脱离文档流 原因分析&#xff1a; 未知 解决方案&#xff1a; 直接上代码 <videocontrols"c…

如何在没有Springockito的情况下模拟Spring bean

我在Spring工作了几年。 但是我总是对XML配置变得多么混乱感到沮丧。 随着各种注释和Java配置可能性的出现&#xff0c;我开始喜欢使用Spring进行编程。 这就是为什么我强烈使用Java配置的原因。 我认为&#xff0c;仅当您需要可视化Spring Integration或Spring Batch流时&…

WP8手机上的图标

一直不清楚WP8手机上两个圆的标志是什么意思&#xff0c;今天看到下面的链接&#xff0c;终于搞明白了&#xff0c;原来是打开了GPS就有。 http://www.windowsphone.com/en-us/how-to/wp8/basics/what-do-the-icons-on-my-phone-mean 转载于:https://www.cnblogs.com/wonderow/…

JS保留两位小数

toFixed&#xff08;2&#xff09;

OpenShift上的Java EE工作流(技术提示#64)

该网络研讨会展示了如何使用WildFly &#xff0c; JBoss Tools &#xff0c; Forge &#xff0c; Arquillian和OpenShift在OpenShift上创建Java EE工作流。 具体来说&#xff0c;它谈论&#xff1a; 如何使用JBoss Developer Studio轻松开发Java EE应用程序并将其直接部署到Op…

获取css样式

js模块代码 function getStyle(obj,attr){ if(obj.currentStyle){//兼容ie return obj.currentStyle[attr]; } else{ return getComputedStyle(obj,null)[attr]; } } window.οnlοadfunction(){ oDiv document.getElementsById(div); console.log((oDiv,width)); } HTML <d…

具有CompletableFuture的异步超时

有一天&#xff0c;我重写了执行不佳的多线程代码&#xff0c;该代码在Future.get()某个时刻被阻塞&#xff1a; public void serve() throws InterruptedException, ExecutionException, TimeoutException {final Future<Response> responseFuture asyncCode();final …

js 中对于 css 的变量操作(React也可)

文章目录前言一、设置CSS变量&#xff1f;二、读取变量三、删除变量总结前言 主要讲js 中对于 css 的变量操作&#xff1b; 前端框架&#xff1a;antd框架 一、设置CSS变量&#xff1f; document.body.style.setProperty(--primary, #7F583F’);二、读取变量 document.body…

ASIHTTPRequest类库简介和使用说明

官方网站&#xff1a; http://allseeing-i.com/ASIHTTPRequest/ 。可以从上面下载到最新源码&#xff0c;以及获取到相关的资料。 使用iOS SDK中的HTTP网络请求API&#xff0c;相当的复杂&#xff0c;调用很繁琐&#xff0c;ASIHTTPRequest就是一个对CFNetwork API进行了封装&a…

UltraESB的首选IDE – IntelliJ IDEA

在AdroitLogic&#xff0c;我们长期以来一直在使用IntelliJ IDEA进行开发。 它是Java和相关语言/技术的最佳IDE&#xff08;它可能也是许多其他语言的选择&#xff0c;但我的经验主要是Java和相关技术&#xff09;。 Groovy和IDEA的Grails的集成很棒。 通过自动发现JDBC驱动程…

跟我一步一步开发自己的Openfire插件

这篇是简单插件开发&#xff0c;下篇聊天记录插件。 开发环境&#xff1a; System&#xff1a;Windows WebBrowser&#xff1a;IE6、Firefox3 JavaEE Server&#xff1a;tomcat5.0.2.8、tomcat6 IDE&#xff1a;eclipse、MyEclipse 8开发依赖库&#xff1a; Jdk1.6、jasper-com…

React div加载背景图

backgroundImage: url(${ActivitiesBack})

Apache FOP与Eclipse和OSGi的集成

Apache FOP是由XSL格式化对象&#xff08; XSL-FO &#xff09;驱动的开源打印处理器。 例如&#xff0c;将数据对象转换为PDF可能非常有用。 但是&#xff0c;将其集成到PDE中并最终以OSGi Service的形式运行并最终显得有些麻烦。 因此&#xff0c;我提供了一个P2存储库&…

预览视频

window.URL.createObjectURL(files[0].file),