【云平台】与【物联网云平台】-程序员宅基地

技术标签: 物联网  云计算  

云平台

我们通常所说的云服务或云平台广义上是一个概念,但其实内部是两个部分。

1.支撑云服务运行的硬件和软件系统环境(云架构平台,简称云平台);

2.实现业务逻辑,支持客户应用,对外提供服务的应用服务平台(云服务平台,简称云服务)。

云平台:可以理解为存在于互联网中,能够扩展、向其他用户提供基础服务、数据、中间件、数据服务、软件的提供商。

云平台也称云计算平台。云计算, 顾名思义, 就是将计算在云上运行。

  • 云:通俗的理解就是远程计算机,并且是一组 一堆,这些远程计算机协同工作构建出一个平台,对用户提供服务。
  • 计算:这是一个概念很大的名词,小了说可以认为是对业务数据进行计算分析的算力,不过通俗意义上,计算是指构建业务系统的各种需求
  • 平台:将云(远程硬件资源)和计算(远程软件资源)组合在一起,就形成了一个平台,对用户提供各种各样的服务。

我们可以这样理解: 云平台就是一个云上的平台,为用户提供各种各样的远程服务。

在这里插入图片描述

为什么用云平台

  • 环境统一
  • 按需付费
  • 即开即用
  • 稳定性强

常见云平台

  • 国内常见云平台:阿里云、百度云、腾讯云、华为云、青云…
  • 国外常见云平台:亚马逊 AWS、微软 Azure …

公有云

购买云服务商提供的公共服务器

公有云是最常见的云计算部署类型。

公有云资源(例如服务器和存储空间)由第三方云服务提供商拥有和运营,这些资源通过 Internet 提供。在公有云中,所有硬件、软件和其他支持性基础结构均为云提供商所拥有和管理。Microsoft Azure 是公有云的一个示例。

在公有云中,你与其他组织或云“租户”共享相同的硬件、存储和网络设备,并且你可以使用 Web 浏览器访问服务和管理帐户。公有云部署通常用于提供基于 Web 的电子邮件、网上办公应用、存储以及测试和开发环境。

公有云优势:

  • 成本更低:无需购买硬件或软件,仅对使用的服务付费。
  • 无需维护:维护由服务提供商提供。
  • 近乎无限制的缩放性:提供按需资源,可满足业务需求。
  • 高可靠性:具备众多服务器,确保免受故障影响。
  • 可用性: N个9 9 全年的故障时间: 365243600*(1-99.9999%)

私有云

自己搭建云平台,或者购买

私有云由专供一个企业或组织使用的云计算资源构成。

私有云可在物理上位于组织的现场数据中心,也可由第三方服务提供商托管。但是,在私有云中,服务和基础结构始终在私有网络上进行维护,硬件和软件专供组织使用。

这样,私有云可使组织更加方便地自定义资源,从而满足特定的 IT 需求。私有云的使用对象通常为政府机构、金融机构以及其他具备业务关键性运营且希望对环境拥有更大控制权的中型到大型组织。

私有云优势:

  • 灵活性更强:组织可自定义云环境以满足特定业务需求。
  • 控制力更强:资源不与其他组织共享,因此能获得更高的控制力以及更高的隐私级别。
  • 可伸缩性更强:与本地基础结构相比,私有云通常具有更强的可伸缩性。

云平台架构——服务层次角度

经典云计算架构包括:
IaaS ( Infrastructure as a Service,基础设施即服务)、
PaaS ( Platform as a Service,平台即服务)、
SaaS ( Software as a Service,软件即服务)三层服务。

  • IaaS层为基础设施运维人员服务,提供计算、存储、网络及其他基础资源,云平台使用者可以在上面部署和运行包括操作系统和应用程序在内的任意软件,无需再为基础设施的管理而分心。
  • PaaS层为应用开发人员服务,提供支撑应用运行所需的软件运行时环境、相关工具与服务,如数据库服务、日志服务、监控服务等,让应用开发者可以专注于核心业务的开发。
  • SaaS层为一般用户服务,提供了一套完整可用的软件系统,让一般用户无需关注技术细节,只需通过浏览器、应用客户端等方式就能使用部署在云上的应用服务。​

在这里插入图片描述

云平台的体系架构——技术角度

在这里插入图片描述

首先应明白建立云平台的目的,与传统的服务器相比,云平台可以将物理资源虚拟化为虚拟机资源池,灵活调用软硬件资源,实现对用户的按需访问。而且在运行过程中根据用户并发量不同,实时迁移虚拟机资源,一方面保证提供高质量服务,另一方面最小化资源成本,提高CPU、内存等利用率。

该架构主要分为4层,从底层到上层分别是资源层、虚拟层、中间件层、应用层。以下从底到上分别说明各层的构造和作用。

资源层:由服务器集群组成。传统服务器要想提供高质量服务,需要性能特别好的服务器(内存高,CPU快,磁盘空间大等),价格昂贵。而服务器集群可以使用以前性能不太好的服务器,利用分布式处理技术,依然可以提供可靠服务,节省费用。

虚拟层:有了物理机集群后,我们需要在物理机上建立虚拟机。建立虚拟机的目的是为了最小化资源成本(最大化资源利用率)。试想一下某台物理机有16G内存,当某段时间连续有小任务量的应用需要处理时,物理机的内存利用率会很低,所以为最大化资源利用率,可以在物理机上独立开辟几个虚拟机,每台虚拟机相当于一个小型服务器,依然可以处理应用请求。我们采用KVM来给每一台虚拟机分配适量的内存、CPU、网络带宽和磁盘,形成虚拟机池。(KVM就是虚拟机监控器hypervisor,可以给虚拟机分配资源,当然也可以开关虚拟机。同样还有XEN和OVM)。

中间件层:这层应该是云平台的核心层,主要功能为:对虚拟机池资源状态进行监测、预警、优化决策。①资源监测:实时监测当前各台虚拟机CPU、内存等使用情况,当然也监测用户应用请求,以便根据应用规模大小进行决策。②预警:防患于未然,根据当前虚拟机资源使用情况预测下一秒用户请求量,以便做出相应资源调整,防止宕机。比如CPU使用率上限为70%,所以当预测下一秒达到该触发点时,应有相应响应。当然,触发阈值应该有更科学的设定。③优化决策:预警之后,虚拟机要进行资源调度(迁移或伸缩),采用何种调度策略,才能保证服务和资源利用率是研究重点。由于该层需要对应用进行响应处理,所以需要在虚拟机上搭建操作系统,文件存储系统,以及服务器,当然最应该有负载均衡系统Nginx,其实现中间件层功能,相当于网络中的路由器不处理数据,只进行数据转发,数据处理交有虚拟机上的tomcat服务器执行。(也相当于hadoop中的Namenode,其他虚拟机相当于datanode)。

补充:中间件层是核心,还有一个功能是初始化分配。就是说整个云平台第一次运行,第一次接收用户应用,考虑用户的应用规模很大,虚拟机处理完一个任务后还要继续处理下一个任务,所以要找到一个恰当的分配策略,使得满足高质量服务和资源成本最小。类比于数学建模中的论文—教师匹配问题,论文全部批阅完作为目标,如何给教师分配任务,使得他们工作量、工作时间接近是我们需要考虑的问题。这里面若教师处理速度不同就等价于异构多核处理器任务调度问题,若教师处理速度相同就等价于同构多核处理器任务调度问题。

应用层:给用户提供可视化界面,应用若为存储:比如百度云会给用户提供交互界面,建立文件夹,进行数据存储,在线播放视频等界面,供用户选择操作。应用若为租用服务器:界面应该有租用的服务器资源状态。

云平台的三种服务类型

以分层理论可以将云平台就“基础服务、数据、软件系统”,划分为:

Iaas(Infrastructureas a Service):基础设施平台即平台

Paas(Platform-as-a-Service):平台即服务

Saas(Software-as-a-Service):软件即服务

IaaS(基础设施平台即平台)

IaaS(Infrastructureas a Service)

消费者通过Internet 可以从完善的计算机基础设施获得服务。这类服务称为基础设施即服务。即通过软件平台将大量硬件资源集中管理,根据用户请求按需分配存储空间、计算能力、内存大小、防火墙、操作系统、网络环境等基础设施,以满足用户需求。

其优点在于基础设施可以动态扩展,根据需求升级而增加基础设施的配置和容量。用户只为自己使用到的部分付费,降低运营成本。付费后可以立即获取需要的升级,无须等待较长时间。缺点是安全性、稳定性不确定。如果服务提供商网络环境出问题,用户则不能访问其提供的基础设施,同时运行在基础设施上的Paas、Saas产品也无法提供服务。

Paas(平台即服务)

Paas(Platform-as-a-Service)

把服务器平台作为一种服务提供的商业模式。通过网络进行程序提供的服务称之为SaaS(Software as a Service)。

云计算时代将“服务器平台”或“开发环境”作为服务的产品,被称为PaaS(Platform as a Service)。 例如企业购买了Iaas虚拟硬件,需要部署一个ERP系统,ERP系统需要大量的服务、数据作为业务支撑,比如采购人员需要知道行业材料价格最新数据,需要知道招投标信息及结果,而PaaS提供商的服务API接口就可以获取到这些数据。

另外Paas系统还保证ERP系统随着使用量增加可能出现的性能瓶颈,利用企业服务总线、云存储、云缓存解决服务负载均衡、缓存、存储问题,让其运行在基础设施上。 解决专业、公共、非功能性问题的服务,不属于业务部分,放入Paas平台,利用云的扩展性,分担业务系统的性能压力。代表产品有ESB、Hadoop等。

PaaS的价值在于提供独特的价值能力,这些服务大多是对稀有资源的包装,通过Open API的方式供第三方调用。这些资源包括业务数据、业务服务、计算能力、存储能力等。

Saas(软件即服务)

Saas(Software-as-a-Service)

随着互联网技术的发展和应用软件的成熟, 在21世纪开始兴起的一种完全创新的软件应用模式。

与“on-demand software”(按需软件),theapplication service provider(ASP,应用服务提供商),hosted software(托管软件)具有相似的含义。

它是一种通过Internet提供软件的模式,厂商将应用软件统一部署在自己的服务器上,客户根据自己实际需求,通过互联网向厂商定购所需的应用软件服务,按定购的服务多少和时间长短向厂商支付费用,并通过互联网获得厂商提供的服务。 用户不用购买软件,向提供商租用基于Web的软件,来管理企业经营活动,且无需对软件进行维护,服务提供商会全权管理和维护软件,软件厂商在向客户提供互联网应用的同时,也提供软件的离线操作和本地数据存储,让用户随时随地都可以使用其定购的软件和服务。

对于许多小型企业来说,SaaS是使用先进技术的最好途径,它消除了企业购买、构建和维护基础设施和应用程序的需要。 为降低企业运营成本,企业通过购买Saas平台的软件直接使用达到软件目标,而不必购买服务器、部署在自己人服务器上的软件、专人的维护。只需要按照次数或者使用量来付费。代表模式:多租户。

其优点在于使用方便,运营成本低。缺点是除了稳定性、安全性外,软件定制开发、升级、与其他软件整合,都需要Saas提供商的支持。

Iaas、Paas、Saas关系

  • Paas和Saas可以运行在Iaas上,也可以不运行在Iaas上。

  • Paas可以为Saas提供服务,也可以为非Saas系统提供服务。

  • 非Saas系统一般没有那么强的性能需求,Paas是可以助力Saas系统突破性能瓶颈的解决方案。当然,Saas可以使用Paas解决性能问题,也可以不使用Paas。

  • Saas可以使用Iaas作为基础设施,也可以不用。

物联网云平台

物联网云平台是物联网产业链中至关重要的环节,按照逻辑可以分为设备管理平台DMP、连接管理平台CMP、应用使能平台AEP、业务分析平台BAP四大平台类型。

设备管理平台DMP

物联网云平台中的设备管理平台的功能主要是对物联网终端进行远程监控、设置调整、软件升级、系统升级、故障排查、生命周期管理等功能。

连接管理平台CMP

连接管理物联网云平台一般应用于运营商网络上,实现对物联网连接配置和故障管理、保证终端联网通道稳定、网络资源用量管理、连接资费管理、账单 管理、套餐变更、号码/IP地址/Mac资源管理,更好的帮助移动运营商做好物联网SIM的管理。

应用支持平台AEP

应用支持平台是提供应用开发和统一数据存储两大功能的PaaS平台,架构在CMP平台之上。功能可提供成套应用开发工具、中间件、数据存储功能、业务逻辑引擎、对接第三方系统API、如终端管理、连接管理、数据分析应用、业务支持应用等。物联网应用开发者在AEP平台上讯速开发、部署、管理应用,降低开发成本、大大缩短开发时间。

业务分析平台BAP

业务分析平台包含基础大数据分析服务和机器学习两大功能。其中大数据服务主要是指平台在集合各类相关数据后,进行分类处理、分析并提供视觉化数据分析结果,通过实时动态分析,监控设备状态并予以预警;而机器学习则是通过对历史数据进行训练生成预测模型或者客户根据平台提供工具自己开发模型,满足预测性的、认知的或复杂的分析业务逻辑。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/tulihetulihe/article/details/126738030

智能推荐

使用UmcFramework和unimrcpclient.xml连接多个SIP设置的配置指南及C代码示例

在多媒体通信领域,MRCP(Media Resource Control Protocol)协议被广泛用于控制语音识别和合成等媒体资源。UniMRCP是一个开源的MRCP实现,提供了客户端和服务端的库。UmcFramework是一个基于UniMRCP客户端库的示例应用程序框架,它帮助开发者快速集成和测试MRCP客户端功能。本文将详细介绍如何使用UmcFramework和unimrcpclient.xml配置文件连接到多个SIP设置,以及如何用C代码进行示例说明。

java.net.ProtocolException: Server redirected too many times (20)-程序员宅基地

文章浏览阅读3k次。报错:java.net.ProtocolException: Server redirected too many times (20)1.没有检查到cookie,一直循环重定向。解决:CookieHandler.setDefault(new CookieManager(null, CookiePolicy.ACCEPT_ALL));URL url = new URL(url); ..._java.net.protocolexception: server redirected too many times (20)

springboot启动报错 Failed to scan *****/derbyLocale_ja_JP.jar from classloader hierarchy_failed to scan from classloader hierarchy-程序员宅基地

文章浏览阅读4.1k次。问题这是部分报错信息2019-07-11 14:03:34.283 WARN [restartedMain][DirectJDKLog.java:175] - Failed to scan [file:/D:/repo/org/apache/derby/derby/10.14.2.0/derbyLocale_ja_JP.jar] from classloader hierarchyjava...._failed to scan from classloader hierarchy

MATLAB-ones函数_matlab中ones函数-程序员宅基地

文章浏览阅读2.8k次,点赞3次,收藏7次。在MATLAB中,ones函数用于创建一个指定大小的由1组成的矩阵或数组。_matlab中ones函数

解决PS等软件出现应用程序无法正常启动(0xc000007b)_photoshop应用程序无法正常启动0xc000007b。请单击“确认”关闭应用程序。-程序员宅基地

文章浏览阅读3.9w次,点赞2次,收藏9次。  在使用电脑办公过程中,安装应用程序时难免遇到无法安装或者无法正常启动的问题,这对我们使用电脑带来了诸多不便。那遇到应用程序无法正常启动的问题要如何解决呢?相信大家肯定都是十分疑问的,每次都是只能忍痛重新安装软件。今天,小编就和大家探讨下应用程序无法正常启动的解决方法,帮助大家排忧解难。0xc000007b电脑图解1  第一种方案:SFC检查系统完整性来尝试修复丢失文件  1、打开电脑搜索输入cmd.exe,选择以管理员身份运行,跳出提示框时选择继续。0xc000007b电脑图解2_photoshop应用程序无法正常启动0xc000007b。请单击“确认”关闭应用程序。

oracle介质恢复和实例恢复的异同-程序员宅基地

文章浏览阅读396次。1、概念 REDO LOG是Oracle为确保已经提交的事务不会丢失而建立的一个机制。实际上REDO LOG的存在是为两种场景准备的:实例恢复(INSTANCE RECOVERY);介质恢复(MEDIA RECOVERY)。 实例恢复的目的是在数据库发生故障时,确保BUFFER CACHE中的数据不会丢失,不会造成数据库的..._oracle 实例恢复和介质恢复

随便推点

轻松搭建CAS 5.x系列(5)-增加密码找回和密码修改功能-程序员宅基地

文章浏览阅读418次。概述说明CAS内置了密码找回和密码修改的功能; 密码找回功能是,系统会吧密码重置的连接通过邮件或短信方式发送给用户,用户点击链接后就可以重置密码,cas还支持预留密码重置的问题,只有回答对了,才可以重置密码;系统可配置密码重置后,是否自动登录; 密码修改功能是,用户登录后输入新密码即可完成密码修改。安装步骤`1. 首先,搭建好cas sso server您需要按..._修改cas默认用户密码

springcloud(七) feign + Hystrix 整合 、-程序员宅基地

文章浏览阅读141次。之前几章演示的熔断,降级 都是 RestTemplate + Ribbon 和RestTemplate + Hystrix ,但是在实际开发并不是这样,实际开发中都是 Feign 远程接口调用。Feign + Hystrix 演示:  eruka(略)order 服务工程:  pom.xml<?xml version="1.0" encoding="U..._this is order 服务工程

YOLOv7如何提高目标检测的速度和精度,基于优化算法提高目标检测速度-程序员宅基地

文章浏览阅读3.4k次,点赞35次,收藏43次。学习率是影响目标检测精度和速度的重要因素之一。合适的学习率调度策略可以加速模型的收敛和提高模型的精度。在YOLOv7算法中,可以使用基于余弦函数的学习率调度策略(Cosine Annealing Learning Rate Schedule)来调整学习率。

linux中进程退出函数:exit()和_exit()的区别_linux结束进程可以用哪些函数,它们之间有何区别?-程序员宅基地

文章浏览阅读4k次,点赞4次,收藏9次。 linux中进程退出函数:exit()和_exit()的区别(1)_exit()执行后立即返回给内核,而exit()要先执行一些清除操作,然后将控制权交给内核。(2)调用_exit函数时,其会关闭进程所有的文件描述符,清理内存以及其他一些内核清理函数,但不会刷新流(stdin, stdout, stderr ...). exit函数是在_exit..._linux结束进程可以用哪些函数,它们之间有何区别?

sqlserver55555_sqlserver把小数点后面多余的0去掉-程序员宅基地

文章浏览阅读134次。select 5000/10000.0 --想变成0.5select 5500/10000.0 --想变成0.55select 5550/10000.0 --想变成0.555select 5555/10000.0 --想变成0.5555其结果分别为:0.5000000 0.5500000 0.5550000 0.5555000一、如果想去掉数字5后面多余的0 ,需要转化一下:selec..._sql server 去小数 0

Angular6 和 RXJS6 的一些改动_angular6,requestoptions改成了什么-程序员宅基地

文章浏览阅读3.1k次。例一:import { Injectable } from '@angular/core';import { Observable } from 'rxjs';import { User } from "./model/User";import { map } from 'rxjs/operators';import { Http, Response, Headers, RequestOp..._angular6,requestoptions改成了什么

推荐文章

热门文章

相关标签