大家第一次看到SAP MTA这个词组,会联想到什么?
Jerry第一次看到的时候,联想到的是那一个个足坛著名的三叉戟攻击组合。
海皇波塞冬(Poseidon),奥林匹斯十二神中地位仅次于宙斯的大神,海界的统治者,他的威严与大地无穷无尽的生命力及洪水相匹敌。三叉戟是海皇波塞冬的武器,外型似鱼叉,中间刺较长而边缘两根刺较短。这把武器因《圣斗士星矢》在国内的热播而被广大八零后九零后熟知。
由于三叉戟极富攻击力的视觉外观,国内外很多球迷喜欢将很多成为无数后卫噩梦的足坛攻击性组合称为“三叉戟”组合,并使用构成这些组合的球星名字首字母的组合命名,比如巴塞罗那队曾经的南美三叉戟MSN,以及死敌皇家马德里的欧洲三叉戟BBC.
当然,咱国内足坛也有自己的三叉戟,比如令无数老球迷津津乐道的“金玉圣”三叉戟:李金羽,张玉宁,曲圣卿。
刮起青春风暴的辽小虎们凭借无坚不摧的金玉圣三叉戟,在1999年甲A联赛里差点创造了德甲凯泽斯劳滕般的奇迹,最后仅以1分之差,位于山东鲁能泰山队之后,屈居亚军。
(Jerry:我大四川全兴队这一年高开低走,不过还是创造了四川队的历史最佳名次)
所以Jerry第一次看到SAP MTA这个组合时,虽然视觉上看到的是Multi Target Application,然而脑子里却习惯性地把给我留下深刻印象的球星名字和MTA进行匹配:
M:Makélélé
马克莱莱,法国著名球星,司职防守型后腰,在Jerry心中他是最被低估的巨星之一。绿茵场上总有一些默默无闻干着脏活的“蓝领”球员,当球队进球时镁光灯的焦点从来不会落在他们身上,然而一旦缺少他们,所有人才发现整只球队都玩不转了。马克莱莱就是这样的低调实力派球员,实力远大于名气。重心低,下盘稳,一对一缠斗能力极强,防守动作成功率极高,以其惊人的横向覆盖能力,使得他在球队里踢的位置被称为“马克莱莱位置”。
T: Totti
托蒂,意甲罗马队狼王,随着意甲在国内的直播而吸引了无数球迷。2017年8月14日,《天下足球》栏目推出的托蒂退役特别节目《狼图腾》,以天下足球栏目特有的催泪风格,送别了托蒂离开绿茵场。一个人,一座城,一袭红衣,一生传奇, 他早已是红狼之王, 永恒之城的图腾, 纵横28年屹立不倒。他的告别结束了一段童话,带走了一段光阴,也让国内无数八零后九零后球迷,送别了自己的青春。
A:Adriano
阿德里亚诺,巴西历史上继罗纳尔多之后又一位极有希望成为新球王的球星,他拥有成为球王的一切条件,巅峰期的阿德里亚诺无论是在真实的绿茵场上还是各式足球电脑游戏里都是bug一般的存在,有球迷称阿德里亚诺是现役球员莱万多夫斯基和C罗的综合体。
可惜造化弄人,阿德里亚诺像一颗流星一样迅速陨落了,坠入凡间的速度比罗纳尔迪尼奥更快。尽管阿德里亚诺远远没有达到专业人士和球迷期望他达到的高度,但他在国际米兰03到05年的巅峰表现,如今仍然是无数球迷津津乐道的话题。
Jerry排出的这个MTA组合虽然不是一个锋线三叉戟,但应该能算一个攻防俱佳,相当有竞争力的一个中前场铁三角吧?
扯淡完毕,进入正题。
SAP MTA: Multi Target Application
Jerry前一篇文章 学而不思则罔 - SAP云平台ABAP编程环境的由来和适用场景 里介绍过,随着SAP云平台的出现,SAP云平台开发生态圈告别了过去单凭ABAP打天下的局面。
伴随着SAP云转型的步伐,越来越多的编程语言,技术栈,工具纷纷加入SAP开发生态圈。现代企业级应用,越来越不青睐过去传统的单体式架构,取而代之的是采用微服务的思想,将复杂的单体应用根据业务拆分成一个个细粒度的分散的松耦合模块,这些模块可以由不同的编程语言和技术栈实现。
凡事有利就有弊,这种拆分除了让我们享受微服务架构带来的收益外,也引入了新的挑战,比如这些模块群的生命周期管理,统一部署和配置等等。SAP MTA的引入就是为了解决这些挑战,Multi Target Application里包裹的所有模块,不管它们采用何种异构的技术栈实现,都共享同一套生命周期管理。通过MTA管理的应用模块,所有运行时的依赖问题都能得到妥善处理。
本文只是对SAP云平台上的MTA模型进行Hello world级别的介绍,更多SAP MTA高级用法,请参考SAP官方文档:
在SAP WebIDE里根据向导可以很容易地创建一个MTA项目:
创建模板选择Multi Target Application:
随便命个名:
从MTA右键菜单里,我们能看到支持许多不同类型的模块创建,大家体会到了Multi的含义了吗?这里简单起见,我先创建一个nodejs模块:
nodejs模块取名为hello:
这里维护的信息会写入最后生成nodejs模块的package.json文件里:
生成的package.json如下,做过nodejs开发的朋友都很熟悉了:
通过命令行cf login和cf buildpacks能看到当前登录的SAP Cloud Platform CloudFoundry环境里支持的buildpack列表,我们创建的nodejs模块需要的buildpack也在里面。这些buildpack可以用于对相应的模块进行编译,处理依赖,打包,确保它们能够顺利运行在CloudFoundry上。
我在这个hello world级别的nodejs模块里,实现了一个简单的打印当前运行环境所有的环境变量的功能。代码编辑完后,点击Run菜单运行,会自动触发依赖分析,打包和部署的动作:
部署完毕后,会生成一个应用的url,点击:
成功打印出了当前CloudFoundry运行实例上的环境变量:
依法炮制,创建一个MTA三叉戟的第二根尖刺,类型为Java模块:
模板选择Spring Boot Application:
换个名字:hellojava
这次就打印一个Hello World就完了:
同样点击Run菜单,触发build和部署,最后自动启动模块:
每个MTA项目都有一个描述文件,格式为yaml,里面记录了MTA包含的每个模块的技术明细。SAP官方文档里定义的很多高级用法,都在这个yaml文件里做文章。
在真实场景中,开发人员完成MTA的开发后,需要对MTA项目进行build,生成一个Archive文件,交给管理员由后者进行部署:
在MTA项目右键菜单里选择Build,生成这个Archive文件:
管理员可以用命令行或者SAP WebIDE里的菜单进行部署:
一旦管理员触发部署动作后,MTA项目里包含的所有模块都会被部署到SAP Cloud Platform上并处于运行状态。
希望这篇文章能让大家对SAP云平台提供的MTA模型有一个最基本的认识,感谢阅读。国庆黄金周的第二天,祝大家国庆愉快。
相关推荐
SAP云平台上的LowCodeDevelopment解决方案是指使用低代码开发平台/工具,快速生成应用程序的平台/工具,通常提供可视化的交互界面来快速搭建应用界面,设计数据模型,创建应用业务逻辑和工作流等。低代码开发平台对...
SAP云平台开发入门涉及多个知识点,包括SAP Cloud Platform的基础介绍、Cloud Foundry环境、Neo环境、区域与API端点的设置、丰富的功能模块、连接性、文档服务、反馈服务、游戏化概念、Git服务、消息传递概念、监控...
SAP云平台解决方案的实施为企业带来了诸多增值效益,例如通过SAP Roma集成平台实现一站式服务,自动化安装和应用弹性伸缩简化了运维,存储容灾成本降低80%,并提供了7*24的专业运维支持。此外,还有针对SAP系统的...
SAP云平台(SAP Cloud Platform)是一个全面的企业级云平台服务,为企业提供了构建、扩展和运行应用程序的能力。该平台支持多云环境,允许企业利用SAP和其他云供应商的服务。SAP云平台的核心功能包括: - **应用开发...
SAP HANA云平台(HANA Cloud Platform,简称HCP)是一个开放的PaaS(Platform-as-a-Service)解决方案,它为开发人员和企业提供了构建、扩展和集成应用程序的环境,特别关注于企业级的BPaaS(Business-Platform-as-a...
SAP高级应用开发SAP高级应用开发SAP高级应用开发SAP高级应用开发
### SAP NetWeaver集成应用平台的关键知识点 #### 一、SAP企业服务架构(Enterprise Services Architecture, ESA) SAP的企业服务架构(ESA)是SAP为应对企业不断变化的业务需求而提出的一种全新的架构理念。它旨在...
SAP 云产品定价及License指导手册
SAP PO 流程集成平台是一个企业服务总线(ESB)平台,由 SAP 提供,基于 J2EE 架构,基于开放标准,是涵盖 SOA 建模与设计、应用到应用的集成(A2A)、业务到业务的集成(B2B)、以及跨系统业务流程管理的完整解决...
本书系统地介绍了SAP NetWeaver架构下的关键技术,包括RFC通信协议、BAPI、ALE/IDoc技术、SAP工作流技术、SAP外部接口应用开发、Java及.NET平台的Portal应用开发等内容。 SAP高级应用开发覆盖了SAP系统实施和集成...
SAP HANA数据中心技术与云平台建设方案.pdfSAP HANA数据中心技术与云平台建设方案.pdfSAP HANA数据中心技术与云平台建设方案.pdfSAP HANA数据中心技术与云平台建设方案.pdfSAP HANA数据中心技术与云平台建设方案....
本书不仅适用于SAP技术人员和Java\.NET平台下SAP接口程序的开发人员,对于SAP功能实施顾问、项目经理以及所有希望把握SAP最新发展方向的专业人士来说,都是非常值得阅读的图书,称得上是SAP中文专业书中不可多得的...
SAP 开发平台介绍
SUSE for SAP基础平台解决方案是针对企业运行SAP应用程序而设计的专业化操作系统平台。SUSE与SAP有着超过20年的紧密合作历史,这使得SUSE Linux成为了SAP应用的首选操作系统,尤其在市场占有率上表现出绝对的领先...
ABAP是SAP平台上的核心编程语言,用于创建自定义业务逻辑、报告、Web服务等。以下是基于这个主题的详细知识点: 1. **ABAP基础**:ABAP是一种结构化编程语言,支持面向过程和面向对象编程。它的基本元素包括数据...
本书详细讲述SAPHANA平台的各种技术以及在SAPHANA平台上的软件开发过程。主要内容包括:SAPHANA的各个特性;SAPHANAStudio;属性视图;分析视图;图形化计算视图;用SQLScript创建计算视图;SAPHANA系统的授权机制;...
阿里云SAP云化战略转型方案及应用.pptx
阿里云SAP云化战略转型方案及应用.pdf
SAP移动应用是基于SAP Business Suite和SAP HANA平台构建的一系列移动应用程序和服务。这些应用旨在将企业的关键业务功能延伸到移动设备上,包括智能电话和平板电脑,支持iOS、Android、Windows Mobile等多种操作...
### SAP PNP 数据库宏的应用:HR 模块中的 SAP ABAP 开发 在现代企业环境中,人力资源(HR)管理的复杂性和需求日益增长,促使企业寻求更高效、更智能的解决方案来处理庞大的员工数据。SAP(Systems, Applications,...