草庐IT

云计算(Cloud Computing)

芋头丨 2023-06-03 原文

概念

  • 云计算 (Cloud Computing) 是一种计算资源交付模型,其中集成了各种服务器、应用程序、数据和其它资源,并通过 Internet 以服务的形式提供这些资源。通常对资源进行了虚拟化。

  • 或者说,云计算就是计算服务的提供(包括服务器、存储、数据库、网络、软件、分析和智能)——通过 Internet(云)提供快速创新、弹性资源和规模经济。

  • 云计算是分布式计算技术的一种,它的原理是通过网络“云”,将所运行的巨大的数据计算处理程序分解成无数个小程序,再交由计算资源共享池进行搜寻、计算及分析后,将处理结果回传给用户。云连接着网络的另一端,为用户提供了可以按需获取的弹性资源和架构。用户按需付费,从云上获得需要的计算资源,包括存储、数据库、服务器、应用软件及网络等,大大降低了使用成本。

  • 云计算是一种按使用量付费的模式。这种模式提供可用的、便捷的、按需的网络访问, 进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。解释一下意思就是:把每个人手中的独立资源集中起来,放在一个地方进行统一管理,然后动态分配给每个人使用。而云计算,就是把计算资源集中起来,这个计算资源,包括CPU、内存、硬盘等硬件,还有软件。

大概意思,云计算就是让用户使用互联网来使用在云端的应用,数据,或者服务等这些计算机资源,在云计算结构里这些资源有三种提供方式:SaaS、PaaS、IaaS。

原理

原理:云计算就是把一个个服务器或者计算机等计算机资源集中起来连接构成一个庞大的资源池(通过Internet访问),以获得超级计算机的性能,同时又保证了较低的成本。这个计算机资源分为多个层次:

  • 第一层次,是最底层的硬件资源,主要包括CPU(计算资源),硬盘(存储资源),还有网卡(网络资源)等。

  • 第二层次,要高级一些,我不打算直接使用CPU、硬盘、网卡,我希望你把操作系统(例如Windows、Linux)装好,把数据库软件装好,我再来使用。

  • 第三层次,更高级一些,你不但要装好操作系统这些基本的,还要把具体的应用软件装好,例如FTP服务端软件、在线视频服务端软件等,我可以直接使用服务。

  • 以前电脑被发明的时候,还没有网络,每个电脑(PC),就是一个单机。这台单机,包括CPU、内存、硬盘、显卡等硬件。用户在单机上,安装操作系统和应用软件,完成自己的工作。后来,有了网络(Network),单机与单机之间,可以交换信息,协同工作。再后来,单机性能越来越强,就有了服务器(Server)。人们发现,可以把一些服务器集中起来,放在机房里,然后让用户通过网络,去访问和使用机房里的计算机资源 。
    再再后来,小型网络变成了大型网络,就有了互联网(Internet)。小型机房变成了大型机房,就有了IDC(Internet Data Center,互联网数据中心)。当越来越多的计算机资源和应用服务(Application,例如看网页,下电影)被集中起来,就变成了——“云计算(Cloud Computing)”。无数的大型机房,就成了“云端”。

云计算分类

1、根据云计算结构资源的三种提供方式或资源的三个层次这些所提供服务类型的角度出发,云计算可分为三类

  • IaaS: Infrastructure-as-a-Service(基础设施即服务):云计算服务的最基本类别。使用 IaaS 时,你以即用即付的方式从服务提供商处租用 IT基础结构,如服务器和虚拟机 (VM)、存储空间、网络和操作系统。

  • PaaS: Platform-as-a-Service(平台即服务):指云计算服务,它们可以按需提供开发、测试、交付和管理软件应用程序所需的环境。PaaS 旨在让开发人员能够更轻松地快速创建 Web 或移动应用,而无需考虑对开发所必需的服务器、存储空间、网络和数据库基础结构进行设置或管理。

  • SaaS: Software-as-a-Service(软件即服务):通过 Internet 交付软件应用程序的方法,通常以订阅为基础按需提供。使用 SaaS 时,云提供商托管并管理软件应用程序和基础结构,并负责软件升级和安全修补等维护工作。用户(通常使用电话、平板电脑或 PC 上的 Web 浏览器)通过Internet 连接到应用程序。

举例说明三个模式:

吃苹果:

  • 没有云计算:吃苹果需要自己完成垦荒开地、准备工具、种植、采收等全部过程
  • 云计算IaaS:租一块或多块已开垦好的地,自己准备工具、进行种植和采摘等过程。
  • 云计算PaaS:租地并且商店为你主备好种植工具,自己只需要种植和采摘等就可以。
  • 云计算SaaS:直接买别人种完采摘下来的苹果。

2、从部署云计算方式的角度出发,云计算可以分为3类。

  • 公有云:公有云通常指第三方提供商提供给用户进行使用的云,公有云一般可通过互联网使用。阿里云、腾讯云和百度云等是公有云的应用示例,借助公有云,所有硬件、软件及其他支持基础架构均由云提供商拥有和管理

  • 私有云:私有云是为一个客户单独使用而构建的云,因而提供对数据、安全性和服务质量的最有效的控制。使用私有云的公司拥有基础设施,并可以控制在此基础设施上部署应用程序的方式

  • 混合云:混合云是公有云和私有云这两种部署方式的结合。由于安全和控制原因,企业中并非所有的信息都能放置在公有云上。因此,大部分已经应用云计算的企业将会使用混合云模式

云计算特点

  • 可扩展性

云计算中,物理或虚拟资源能够快速地水平扩展,具有强大的弹性,通过自动化供应,可以达到快速增减资源的目的。云服务客户可以通过网络,随时随地获得无限多的物理或虚拟资源。

使用云计算的客户不用担心资源量和容量规划,如果需要,客户可以方便快捷地获取新的、服务协议范围内的无限资源。资源的划分、供给仅受制于服务协议,不需要通过扩大存储量或者维持带宽来维持。这样就降低了获取计算资源的成本。

  • 超大规模

云计算中心具有相当的规模,很多提供云计算的公司的服务器数量达到了几十万、几百万的级别。而使用私有云的企业一般拥有成百上千台服务器。云能整合这些数量庞大的计算机集群,为用户提供前所未有的存储能力和计算能力。

  • 虚拟化

当用户通过各种终端提出应用服务的获取请求时,该应用服务在云的某处运行,用户不需要知道具体运行的位置以及参与的服务器的数量,只需获取需求的结果就可以了,这有效减少了云服务用户和提供者之间的交互,简化了应用的使用过程,降低了用户的时间成本和使用成本。

云计算通过抽象处理过程,对用户屏蔽了处理复杂性。对用户来说,他们仅知道服务在正常工作,并不知道资源是如何使用的。资源池化将维护等原本属于用户的工作,移交给了提供者。

  • 按需服务

无须额外的人工交互或者全硬件的投入,用户就可以随时随地获得需要的服务。用户按需获取服务,并且仅为使用的服务付费。

这种虚拟化软件调度中心可以提高效率并避免浪费,类似人们在家里吃饭,想吃各式各样的饭菜,就需要买各种餐具以及食材,这样会造成餐具的空闲和饭菜的浪费,而云计算就像是吃自助餐,无须自己准备食材和餐具,需要多少取多少,想吃什么取什么。按需服务,按需收费。

云计算服务通过可计量的服务交付来监控用户服务使用情况并计费,云计算为用户带来的主要价值是将用户从低效率和低资产利用率的业务模式中带离出来,进入高效模式。

  • 高可靠性

首先,云计算的海量资源可以便捷地提供冗余;其次,构建云计算的基本技术之一——虚拟化,可以将资源和硬件分离,当硬件发生故障时,可以轻易地将资源迁移、恢复。

而在软硬件层面,采用数据多副本容错、计算机节点同构等方式,在设施、能源制冷和网络连接等方面采用冗余设计。同时,为了消除各种突发情况,诸如电力故障、自然灾害等对计算机系统的损害,需在不同地理位置建设公有云数据中心,从而消除一些可能的单点故障。

云计算系统所使用的成熟的部署、监控和安全等技术,进一步确保了服务可靠性。

  • 网络接入广泛

云计算使用者可以通过各种客户端设备,如手机、平板电脑、笔记本电脑等,在任何网络覆盖的地方,方便地访问云计算服务方提供的物理资源以及虚拟资源

云计算应用

云计算是当前最火爆的三大技术领域之一,其产业规模增长迅速,应用领域也在不断扩展,从政府应用到民生应用,从金融、交通、医疗、教育领域到创新制造等,全行业延伸拓展。以下是云计算的4个比较典型的应用场景。

  • 云存储技术

云存储是云计算技术的一个延伸和应用,它是一个远程平台,通过存储虚拟化、分布式文件系统、底层对象化等技术,利用应用软件将网络中的海量存储设备集合起来,协同工作,共同构成一个向外提供可扩展存储资源的系统。对于用户来说,云存储并不是一种设备,而是一种由海量服务器和存储设备提供的数据服务。

通过各种网络接口,用户可以访问云存储服务并使用其中的存储、备份、访问、归档、检索等功能,大大方便了用户对数据资源进行管理。同时,用户仅需按其使用的存储量付费,无须进行存储设备的检测和维护。

云存储环境的可用性强、速度快、可扩展性强。云存储可以解决本地存储管理缺失问题,降低数据丢失率,提供高效便捷的数据存储和管理服务。

  • 开发测试云

开发测试云可以解决开发中的一些问题,通过构建一个个异构的开发测试环境,利用云计算的强大算力进行应用的压力测试,适合于对开发和测试需求多的企业和机构。通过友好的网页界面,开发测试云可以解决开发测试过程中的各种难题。

  • 大规模数据处理云

大规模数据处理云通过在云计算平台上运行数据处理软件和服务,充分利用云计算的数据存储能力和处理能力,处理海量数据。它可以帮助企业通过数据分析迅速发现商机,从而针对市场做出迅捷、准确的决策。

  • 杀毒云

杀毒云是安置了强大的杀毒软件的云,通过云中存储的庞大病毒特征库并利用云强大的数据处理能力,分析一个数据是否含有病毒。如果在数据中发现疑似病毒,就将有嫌疑的数据上传至云进行检测并处理。杀毒云可以准确、迅速地发现病毒,捍卫用户计算机的安全。

文章引用:终于有人把云计算讲明白了

有关云计算(Cloud Computing)的更多相关文章

  1. ruby-on-rails - 使用一系列等级计算字母等级 - 2

    这里是Ruby新手。完成一些练习后碰壁了。练习:计算一系列成绩的字母等级创建一个方法get_grade来接受测试分数数组。数组中的每个分数应介于0和100之间,其中100是最大分数。计算平均分并将字母等级作为字符串返回,即“A”、“B”、“C”、“D”、“E”或“F”。我一直返回错误:avg.rb:1:syntaxerror,unexpectedtLBRACK,expecting')'defget_grade([100,90,80])^avg.rb:1:syntaxerror,unexpected')',expecting$end这是我目前所拥有的。我想坚持使用下面的方法或.join,

  2. 计算机毕业设计ssm+vue基本微信小程序的小学生兴趣延时班预约小程序 - 2

    项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU

  3. ruby - 如何计算 Liquid 中的变量 +1 - 2

    我对如何计算通过{%assignvar=0%}赋值的变量加一完全感到困惑。这应该是最简单的任务。到目前为止,这是我尝试过的:{%assignamount=0%}{%forvariantinproduct.variants%}{%assignamount=amount+1%}{%endfor%}Amount:{{amount}}结果总是0。也许我忽略了一些明显的东西。也许有更好的方法。我想要存档的只是获取运行的迭代次数。 最佳答案 因为{{incrementamount}}将输出您的变量值并且不会影响{%assign%}定义的变量,我

  4. ruby - 使用 Ruby,计算 n x m 数组的每一列中有多少个 true 的简单方法是什么? - 2

    给定一个nxmbool数组:[[true,true,false],[false,true,true],[false,true,true]]有什么简单的方法可以返回“该列中有多少个true?”结果应该是[1,3,2] 最佳答案 使用转置得到一个数组,其中每个子数组代表一列,然后将每一列映射到其中的true数:arr.transpose.map{|subarr|subarr.count(true)}这是一个带有inject的版本,应该在1.8.6上运行,没有任何依赖:arr.transpose.map{|subarr|subarr.in

  5. arrays - 计算数组中的匹配元素 - 2

    给定两个大小相等的数组,如何找到不考虑位置的匹配元素的数量?例如:[0,0,5]和[0,5,5]将返回2的匹配项,因为有一个0和一个5共同;[1,0,0,3]和[0,0,1,4]将返回3的匹配项,因为0有两场,1有一场;[1,2,2,3]和[1,2,3,4]将返回3的匹配项。我尝试了很多想法,但它们都变得相当粗糙和令人费解。我猜想有一些不错的Ruby习惯用法,或者可能是一个正则表达式,可以很好地回答这个解决方案。 最佳答案 您可以使用count完成它:a.count{|e|index=b.index(e)andb.delete_at

  6. ruby-on-rails - 如何计算 Ruby/Rails 中 JSON 对象的数量 - 2

    Ruby中如何“一般地”计算以下格式(有根、无根)的JSON对象的数量?一般来说,我的意思是元素可能不同(例如“标题”被称为其他东西)。没有根:{[{"title":"Post1","body":"Hello!"},{"title":"Post2","body":"Goodbye!"}]}根包裹:{"posts":[{"title":"Post1","body":"Hello!"},{"title":"Post2","body":"Goodbye!"}]} 最佳答案 首先,withoutroot代码不是有效的json格式。它将没有包

  7. ruby - 如何计算自 Ruby 中给定日期以来的周数? - 2

    目标我正在尝试计算自给定日期以来周的距离,而无需跳过任何步骤。我更喜欢用普通的Ruby来做,但ActiveSupport无疑是一个可以接受的选择。我的代码我写了以下内容,这似乎可行,但对我来说似乎还有很长的路要走。require'date'DAYS_IN_WEEK=7.0defweeks_sincedate_stringdate=Date.parsedate_stringdays=Date.today-dateweeks=days/DAYS_IN_WEEKweeks.round2endweeks_since'2015-06-15'#=>32.57ActiveSupport的#weeks

  8. 最新版人脸识别小程序 图片识别 生成二维码签到 地图上选点进行位置签到 计算签到距离 课程会议活动打卡日常考勤 上课签到打卡考勤口令签到 - 2

    技术选型1,前端小程序原生MINA框架cssJavaScriptWxml2,管理后台云开发Cms内容管理系统web网页3,数据后台小程序云开发云函数云开发数据库(基于MongoDB)云存储4,人脸识别算法基于百度智能云实现人脸识别一,用户端效果图预览老规矩我们先来看效果图,如果效果图符合你的需求,就继续往下看,如果不符合你的需求,可以跳过。1-1,登录注册页可以看到登录页有注册入口,注册页如下我们的注册,需要管理员审核,审核通过后才可以正常登录使用小程序1-2,个人中心页登录成功以后,我们会进入个人中心页我们在个人中心页可以注册人脸,因为我们做人脸识别签到,需要先注册人脸才可以进行人脸比对,进

  9. ruby - 如何计算两个字符串共有的字符数? - 2

    如何计算两个字符串之间的字符交集?例如(假设我们有一个名为String.intersection的方法):"abc".intersection("ab")=2"hello".intersection("hallo")=4好的,男孩女孩们,感谢你们的大量反馈。更多示例:"aaa".intersection("a")=1"foo".intersection("bar")=0"abc".intersection("bc")=2"abc".intersection("ac")=2"abba".intersection("aa")=2一些补充说明:维基百科定义intersection如下:Int

  10. python - 如何计算文件中唯一字符的数量? - 2

    给定一个包含各种语言字符的UTF-8文件,我如何计算它包含的唯一字符的数量,同时排除选定数量的符号(例如:“!”、“@”、"#",".")从这个算起? 最佳答案 这是一个bash解决方案。:)bash$perl-CSD-ne'BEGIN{$s{$_}++forsplit//,q(!@#.)}$s{$_}++||$c++forsplit//;END{print"$c\n"}'*.utf8 关于python-如何计算文件中唯一字符的数量?,我们在StackOverflow上找到一个类似的问题

随机推荐