探索云计算对应用程序开发的影响
云计算如今改变了企业构建和运行应用程序的方式。人们需要探索发生这种情况的原因,并了解采用云计算的企业对其发展的期望。
十年前,当亚马逊公司首次推出其云计算平台时,在全球技术领域掀起了一场重大变革浪潮,并使IT市场走上了如今已经价值1000亿美元行业市场的轨道。
云计算服务已经发展成一个多元化的市场,专注于提供不同类型的虚拟基础设施、开发平台和托管应用程序。VMware公司在多年前就在x86服务器上普及了虚拟机(VM),而按需租用容量的能力成为一项技术和业务创新。
在这几年中,很多云计算服务提供商发布了大量云计算服务,这些服务远远超出了定义早期云计算产品的计算、存储和网络服务,远远超出了应用程序堆栈。仅AWS公司在全球各地的几十个数据中心就提供了将近200种产品,而且这些数字将会不断增长。
随着AWS公司的业务发展,它变得更加复杂,甚至影响了架构决策。首先,它影响了计划云计算部署的基础设施工程师,后来改变了开发人员设计应用程序的方式。
与个人电脑和x86服务器的兴起引起了一波客户端服务器企业应用程序的应用浪潮类似,对云计算的兴趣激发了基于浏览器的应用程序的新开发语言和框架。在过去的十年中,各个领域的开发人员都基于云服务、容器和自动化工具创建了新的设计模式、开发平台和工作流。
集中和分散的周期概述了云计算的每一代应用程序开发的定义产品。但是,随着开发人员适应不同类型的基础设施和部署范例,他们同时遵循了另一种形式的架构演变。这开始集中于软件设计,逐步将应用程序分解成更小的组件。
大型机的成本和操作复杂性促进了整体设计,将应用程序代码打包并作为一个单元运行。分布式客户端-服务器系统和基于浏览器的用户界面的兴起促使应用程序首次分离为模块化的n层架构,从而将功能划分为多个元素。
各种各样的云计算服务(尤其是容器运行时环境、无服务器功能、托管数据库和分析服务)的可用性加速了更加精细化的趋势。对云计算起源和意义的回顾表明,云计算是逻辑抽象各个级别上许多服务的组合。这些各种服务以及容器已经产生了云原生的概念,这是应用程序架构的下一个发展。
云原生构建块
尽管云计算服务已在许多方面影响了开发和部署实践,以下的重点是云计算演进的下一阶段也就是开发云原生应用程序。
云原生目前还没有一个标准的定义,这是专家们不断争论的话题。但是,将云原生应用程序描述为在云平台上开发的应用程序。最终,云原生应用程序旨在机会性地利用所有可用的云计算服务,以尽可能低的成本实现性能、可扩展性、可靠性、安全性、适应性和可管理性的最大化。
在这种概念下,云计算服务就像一盒乐高积木,每个积木都具有一组定义的功能和标准接口(通常是API),用于功能控制和数据I/O,这些功能和标准接口组合在一起以构建应用程序。像乐高积木一样,可以将一组零件组合成为一个模型或模板,这些模型或模板可以快速复制或重用为功能模块。经过十多年的发展,云计算服务现在提供了数量惊人的各种构建块。
云原生设计需要将这些组件拼接在一起以构建自定义应用程序。精通云计算的设计师更喜欢更高的抽象级别,以很大程度地减少工作量,这使企业可以更加专注于应用程序的差异化特性。
云原生应用程序开发与软件开发、集成、测试和部署过程紧密相关。它们通常在DevOps组织下统一,或者通过不太正式地采用DevOps原则和方法。
但是不要将两者混为一谈。无需使用DevOps即可进行云原生开发。并非所有DevOps组织都针对云计算优先的应用程序。但是,DevOps流程可以增强云原生开发。同样,DevOps流程从可编程的云计算开发服务中受益匪浅,这些服务将可重复的流程实现系统化和自动化。
例如,与不使用标准化、可重复、自动化流程的组织相比,具有高级DevOps流程和文化的组织往往具有更短的应用程序部署周期(通常每天多次)。
云原生权衡
尽管云计算为应用程序开发带来了很多好处,但并非没有缺点。云原生设计的最大风险是使用高级服务时的供应商锁定。尽管包装在API中的云计算服务使用户与底层实现隔离开来,但API本身的非标准性质使在云计算提供商之间迁移应用程序变得困难。
此外,还出现了避免锁定的工具。值得注意的是,Kubernetes已成为容器管理和容器化应用程序的事实上的标准。确实,避免锁定通常是许多系统架构师选择使用基于容器的实施而不是使用云原生服务的主要原因。
数据引力也就是将大量数据从一个运营环境移动到另一个运营环境的困难和费用,是云原生设计的另一个缺点。IT部门通常通过使用混合环境来减轻这些担忧。在这种情况下,主数据库和文件存储库保留在私有基础设施上,而云计算基础设施则包含副本或缓存的数据子集。
趋势与预测
近年来,云计算服务提供商的收入增长显著。这在很大程度上是由于企业采用率的增加,而云计算的发展看起来不会很快停止。事实表明,发生的冠状病毒疫情只是加快了这一趋势的发展。
很多企业面临着巨大的资金压力,需要降低成本,提高效率。他们开始意识到其IT部门无法与云计算提供商的规模经济、运营效率和大量研发工作相匹配,而这些都推动了新服务的不断涌现。
许多新加入云计算的公司将把现有的应用程序迁移到虚拟基础设施上,云平台将成为他们所有新应用程序的运营环境。那些利用云计算提供商提供一切资源的公司,其中包括更高级别的服务和开发平台,将具有竞争优势。这将更加强调云原生开发的价值。
人们还可以期望许多企业向提供商施加压力,要求他们在不依赖云计算的抽象模型、描述语言和部署工具上进行协作,以简化云原生应用程序在环境之间的迁移。开放应用程序模型(OAM)是一个很有前途的步骤,最初主要关注基于容器的微服务和Kubernetes环境。
目前尚不清楚开放应用程序模型(OAM)社区是否急于将这一模型扩展到更高级别的云计算产品,例如无服务器功能、分布式数据分析、区块链或人工智能和机器学习。不过,云计算供应商在这方面的努力可能会带来更大的应用程序的迁移性。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
华为智慧城市峰会:赋城市生命体以智能,提升城市综合竞争力
[中国,上海,2020年9月23日]在华为全联接2020期间,华为召开了以“赋城市生命体以智能,提升城市综合竞争力”为主题的智慧城市峰会,与嘉宾共商城市未来发展话题。期间,华为全球政府业务部总裁岳坤代表华为公司分享了“城市生命体”理念及在城市治理领域的最新实践。 在本次峰会上,同济大学副校长、中国工程院院士、德国工程科学院院士、瑞典皇家工程科学院院士吴志强,福州市大数据发展管理委员会副主任张记欢,华为公司副总裁、数字政府总裁杨瑞凯及华为全球政府业务部总裁岳坤等嘉宾莅临现场,发表致辞演讲,并走进高峰对话,共话城市未来治理新体系。 新时代,新技术,为城市治理注入新动力 城市是人类文明发展的结晶,也是人们居住生活的重要空间载体。随着经济的飞速发展,城市规模不断扩大,各类城市治理问题也日渐突出。数字经济时代, 5G、AI等新技术在推动经济发展的同时,也在为城市治理注入新动力。 2010年,在上海世博会期间,提出“城市,让生活更美好”的口号。城市,第一次被赋予“生命体”的概念,变得鲜活生动起来。未来的城市是什么样的?华为给出了自己的答案:更加智慧、更富有生命力、居民的幸福感更强。数字经济时代,城...
- 下一篇
边缘智能技术:这一技术变革被普遍接受的五个原因
COVID-19疫情加速了已经在使用的技术变革。人们发现自己在家里工作和学习,这通常处于雇主和学校运营的计算网络的"边缘"。这是边缘智能技术,这一转变被普遍接受有五个原因。 在家时,许多员工也在大幅增加对娱乐内容的消费。工作条件的变化和随之而来的变革将继续,并辅之以人工智能、处理和连通性方面的创新,赋予这些边缘地区新的能力和服务。 什么是边缘网络? 总而言之,网络的"边缘"将继续演变为设备集合,这些设备比依赖云连接的设备更快、更频繁地在本地工作。远离某些连接也会使设备更安全、更可靠、更节能。 这种转变对世界有着巨大的影响,其中一些我们已经目睹了。 这里有五个理由说明智能技术在边缘的存在。 首先,尖端技术让我们参与其中。 技术已经证明,它本身是一种不可或缺的工具,可以使人们在某些时候以一种可能曾经看起来不可能的方式聚集在一起。 工作团队和家庭不再需要在同一个房间里交流思想和感受。更深刻的是,那些曾经因为无法参加朝九晚五的工作而被排斥在就业市场之外的人,可以在最适合他们的时间和地点使用这项科技。 如那些花大量时间照顾儿童或老人,或那些需要通勤上班的人,也可以接触各种各样的人和他们的技能已经...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS8编译安装MySQL8.0.19