应用程序层叠的说法未免稍显落伍,时髦的说法是切片。得益于开放式API的飞速发展,我们正迎来应用开发的新时代。比方说是基础服务API,例如:邮件,FTP,监控管理等,这些服务越来越多地以切片的形式来交付,帮助开发者减少了本地开发部署的时间,从而能把精力更多地集中到应用程序本身。此外,远程调用,脸部识别,社交数据挖掘等新技术新服务,我们都可以快速拥有并运用到实际当中。所以,简单来说,现代应用开发更偏向是APIs的组合运用,而不是单纯的代码编写。
传统的程序开发层叠模式
传统模式是这样的:
不论你是使用LAMP,RoR还是Java,对此模式应该都不会陌生。应用层,Web/App服务器层,数据库,操作系统。而随着IaaS和PaaS的引入,它转变成下面的样子:
在云环境中,操作系统和数据存储通常都被模糊看作是一个单一Iaas层。Web/App服务器是一个PaaS层。这是现在常见的结构,除非PaaS另作他用,如虚拟化,弹性层等。
开放式API
然而,开放式API的出现仿佛让一切推倒重来。我们来看看一个传统应用中的普通构成:
一个Web应用通常被认为是一个UI层,一个商业逻辑层,一个数据层,以及一个负责认证和审核工作的安全层的综合。由于JavaScript的广泛使用,采用REST API把UI层独立出来的做法变得普遍,这使得数据可在表示层完成处理并展示。商业逻辑层和安全层由于地位特殊,目前尚保持稳定。越来越多的开发者投进了开放式APIs的怀抱—第三方服务—或引入新功能,或创建更丰富的数据集。将近5000个APIs可供选择,成为开发者得力的左膀右臂,我们把这部分定义为“整合”,因此传统的构成最终转变成这样:
切片化的应用程序
新型模式中另外一个特点是,越来越多的功能层将可在程序外来完成整合,数据层甚至是安全层的实现现在都可交由第三方服务来完成。或许将来我们再分析应用的构成时,会看到类似下图的API呈现百家争鸣模式。
对于开发者来说,这是个多么美妙的时刻。PaaS是下一代的平台,开放式API提供了切片化功能。诚然程序的性能对于这样的改变需要付出一定代价,比方说是数据和程序间的通讯延迟,但在发达的网络环境下,类似的问题容易解决。此外,很多新特性越来越倾向于以简单拖拽释放的方式来进行,这对开发平台易用性也提出了更高的要求。所以,如果有好的开发想法,不妨马上去实践,而不用困扰于开发门槛过高的问题了。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
数字化转型:如何更好地利用API和微服务
API,即应用程序编程接口,它提供给应用程序、开发人员访问其它应用的能力,而又无需访问源码,无需理解内部工作机制细节;简单地说,API就是实现应用与应用连接的一种隐形的桥梁。
-
金融行业数字转型:利用API构建新IT基础
从制造业、物流业,银行业到零售业,各行各业的根基都因应用经济的兴起发生着深刻的变革。在互联网和智能手机普及化的推动下,这种现象变得司空见惯。到2021年 ,蓬勃发展的全球应用经济的预估总值将达到6.3万亿美元,相比2016年的1.3万亿美元,增长近5倍。
-
青云QingCloud PaaS六大升级:AppCenter应用生态更完善
企业级云服务商青云QingCloud(qingcloud.com)日前宣布,将对其官方运营的PaaS服务进行全 […]
-
如何使用Azure API管理服务?
在云和微服务架构时代,API是数字化业务的通用语言。根据分析公司Forrester Research预测,仅在美国,API管理工具的支出将在未来5年内达到近30亿美元。