0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

云计算改变了企业构建和运行应用程序的方式

如意 来源:企业网D1Net 作者:Kurt Marko 2020-09-24 14:25 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

云计算如今改变了企业构建和运行应用程序的方式。人们需要探索发生这种情况的原因,并了解采用云计算的企业对其发展的期望。

十年前,当亚马逊公司首次推出其云计算平台时,在全球技术领域掀起了一场重大变革浪潮,并使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)社区是否急于将这一模型扩展到更高级别的云计算产品,例如无服务器功能、分布式数据分析、区块链人工智能机器学习。不过,云计算供应商在这方面的努力可能会带来更大的应用程序的迁移性。
责编AJX

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 云计算
    +关注

    关注

    39

    文章

    8003

    浏览量

    143038
  • 企业
    +关注

    关注

    0

    文章

    222

    浏览量

    23375
  • 应用程序
    +关注

    关注

    38

    文章

    3342

    浏览量

    59907
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    构建基石:深入理解OpenStack网络(Neutron)核心服务

    简单来说,OpenStack 是一个开源的计算管理平台项目,它允许你使用一套软件来构建和管理你自己的私有或公有。你可以把它想象成开源的
    的头像 发表于 11-11 10:41 882次阅读
    <b class='flag-5'>构建</b><b class='flag-5'>云</b>基石:深入理解OpenStack网络(Neutron)核心服务

    学生适合使用的SOLIDWORKS 应用程序

    随着科技的不断发展,计算机辅助设计(CAD)技术已经成为现代工程教育的重要组成部分。SOLIDWORKS作为一款CAD软件,其教育版应用程序为学生提供了强大而灵活的设计平台。本文将探讨
    的头像 发表于 09-15 10:39 511次阅读
    学生适合使用的SOLIDWORKS <b class='flag-5'>云</b><b class='flag-5'>应用程序</b>

    使用英特尔® NPU 插件C++运行应用程序时出现错误:“std::Runtime_error at memory location”怎么解决?

    使用OpenVINO™工具套件版本 2024.4.0 构建C++应用程序 使用英特尔® NPU 插件运行了 C++ 应用程序 遇到的错误: Microsoft C++ excep
    发表于 06-25 08:01

    请问是否可以在通用Windows平台中构建OpenVINO™ GenAI C++ 应用程序

    无法在通用 Windows 平台中构建OpenVINO™ GenAI C++ 应用程序
    发表于 06-24 07:35

    部署计算机上运行 LabVIEW 应用程序时出现以下错误: “缺少外部函数 dll...”解决办法

    如果你既有 DLL 文件,也有头 (.h) 文件,那么可以使用共享库批量生成VI,不用再一个一个使用“调用库函数节点”来调用DLL,源代码运行是没有问题,一旦生成应用程序报错缺失外部函数或者外部函数
    发表于 04-01 19:10

    stm32f407的flash内容没有做任何事情,但是它的内容改变了,为什么?

    我的一个程序使用IAP。该应用程序从0x8020000开始。在应用程序正常工作一段时间后,应用程序将无法运行。我查看了不正常
    发表于 03-07 07:52

    揭秘计算架构的分层奥秘

    在数字化浪潮席卷全球的今天,计算作为新一代信息技术的核心,正以前所未有的速度改变着我们的生活方式和工作模式。
    的头像 发表于 02-26 17:41 956次阅读

    AWTK-WEB 快速入门(4) - JS Http 应用程序

    导读XMLHttpRequest改变了Web应用程序与服务器交换数据的方式,fetch是其继任者。本文介绍一下如何使用JS语言开发AWTK-WEB应用程序,并用fetch访问远程数据。
    的头像 发表于 01-22 11:31 721次阅读
    AWTK-WEB 快速入门(4) - JS Http <b class='flag-5'>应用程序</b>

    ANACONDA——关于发布数据应用程序的新简单方法

    与 Anaconda 的笔记本服务无缝集成,为用户提供了一种轻松共享笔记本结果的方式,并让其他人也可以随意的访问它们。 下面我们来了解关于这项新功能的实际应用: 这项功能与 Panel 的多功能性相结合,将彻底改变您发布数据
    的头像 发表于 01-17 11:39 643次阅读
    ANACONDA——关于发布数据<b class='flag-5'>应用程序</b>的新简单方法

    Flexus 服务器 X 实例实践:安装 flatnotes 笔记应用程序

    flatnotes 作为一款独特的笔记 Web 应用程序,在华为服务器上的安装实践值得探索。 一、Flexus 服务器 X 实例介绍 1.1 Flexus 服务器 X 实例简介
    的头像 发表于 01-13 15:52 1042次阅读
    Flexus <b class='flag-5'>云</b>服务器 X 实例实践:安装 flatnotes 笔记<b class='flag-5'>应用程序</b>

    构建企业级文件管理系统,轻松搭建 Seafile 社区版存储解决方案

    前言 随着企业数据量的激增,构建一个安全、高效的企业级文件管理系统至关重要。华为 Flexus X 服务器,以其灵活的资源配置与卓越的性能,成为部署 Seafile 社区版存储解决方
    的头像 发表于 01-13 11:14 3451次阅读
    <b class='flag-5'>构建</b><b class='flag-5'>企业</b>级文件管理系统,轻松搭建 Seafile 社区版<b class='flag-5'>云</b>存储解决方案

    什么是计算平台?搭建计算平台需要什么条件

    计算平台是一种以计算技术为基础的计算服务平台,用于提供灵活、可扩展、可共享的计算资源和系统服
    的头像 发表于 01-09 10:43 825次阅读

    超级应用程序Grab选择亚马逊科技为首选服务商

    推动技术创新与业务增长 北京2024年12月19日 /美通社/ -- 在亚马逊科技2024 re:Invent全球大会上,亚马逊科技与东南亚领先的超级应用程序Grab共同宣布,Grab已选择
    的头像 发表于 12-19 15:31 840次阅读

    计算环境下的IP地址分配方式

    之前我们聊过在计算机环境下IP地址的分配方式,但在计算环境下,IP地址的分配方式更加灵活,可以根据实际需求进行配置,用来满足不同
    的头像 发表于 12-19 14:02 841次阅读

    晶圆制造recipe(工艺配方)的定义、重要性、种类及构建和验证方式

    本文介绍了在半导体制造领域,recipe(工艺配方)的定义、重要性、种类,以及构建和验证方式,并介绍了优化方向。 在半导体制造领域,recipe(工艺配方)是指一套精确定义的工艺参数和操作程序,用于
    的头像 发表于 12-10 17:11 4441次阅读