浅谈云计算03 | 云计算的技术支撑(云使能技术)

云计算的技术支撑

    • 一、定义与内涵
      • 1.1 定义与内涵
    • 二、云计算使能技术架构
      • 2.1 宽带网络和 Internet 架构
      • 2.2 数据中心技术
      • 2.3 虚拟化技术
      • 2.4 Web 技术
      • 2.5 多租户技术
      • 2.6 服务技术

在这里插入图片描述

一、定义与内涵

1.1 定义与内涵

云计算技术包含一些基础的关键技术,这里称为使能技术,包括宽带网络和 Internet 架构、数据中心技术、虚拟化技术、Web 技术、多租户技术、服务技术。就技术而言,云计算融合了各派精华,但仍然自成一派,其表现出的核心意义不仅在于技术的发展,还在于通过各种技术,使人们建立 IT 系统的思路发生变化,同时使架构发生根本性变化。

二、云计算使能技术架构

2.1 宽带网络和 Internet 架构

互联网最大主干网由众多网络业务提供商(Internet Service Provider,简称ISP)协同构建,是一项浩大工程。ISP 投入巨资建设网络基础设施,从铺设海底光缆到架接陆地骨干线路,织就全球信息网络。主干网如同互联网“脊梁”,承担连接不同地域、国家网络的重任,是全球信息互通的关键。
在这里插入图片描述

主干 ISP 间通过核心路由器以高速链路相连,采用先进光通信技术,具备超高带宽与低时延,形成信息“高速主干道”,保障海量数据在其间高速交换。以中国移动、中国电信为例,其骨干网络依托雄厚技术实力与广泛布局,在国内外互联网通信中起关键作用,既能应对日常上网流量高峰,如电商节流量洪峰,又能保障跨国企业数据交互、高清视频会议等对网络质量要求严苛的业务。

云服务作为现代信息技术服务的典型模式,涵盖计算资源调配、数据存储调用等多元复杂功能。其稳定交付高度依赖高效网络连接。技术层面,云服务提供商构建大型数据中心,集成超强算力服务器集群处理计算任务,配备海量存储阵列负责数据持久化。若缺网络这一信息传输“纽带”,数据中心资源将被困于“黑匣”。用户的计算请求,如复杂模型运算、海量数据读写操作,无法触达云端资源池,云服务所承诺的弹性扩展、按需分配优势便无法兑现。

2.2 数据中心技术

数据中心能够将彼此相邻的众多 IT 资源进行有效的组织与整合。它以标准化的商用硬件为基础,这种标准化的选择不仅降低了硬件采购的成本与难度,更使得不同设备之间具备了良好的兼容性。

从架构层面来看,数据中心的 IT 资源可细分为物理层和虚拟层。物理层是数据中心的硬件基石,实实在在地呈现着各类设备的物理形态;虚拟层则是基于物理资源,通过虚拟化技术构建出的逻辑资源空间,极大地提升了资源的利用率与灵活性。同时,数据中心采用模块化架构进行设计,将整个数据中心拆解为多个相同的基础设施模块和设备。这种模块化的设计思路,使得数据中心具备了诸多显著优势。

首先是可扩展性,当业务需求增长时,只需简单地添加新的模块,就能轻松实现数据中心规模的扩展,如同搭积木一般便捷高效,无需对整体架构进行大规模的改动。其次是可替代性,一旦某个模块出现故障,可迅速用备用模块进行替换,确保数据中心的正常运行不受较大影响。再者,模块化设计使得硬件更换变得极为快速,能够在短时间内完成硬件的更替,减少因硬件故障导致的业务中断时间。

模块化与标准化的设计理念,不仅为数据中心带来了技术层面的优势,更在经济层面展现出巨大的价值。通过采用标准化的商用硬件和模块化架构,能够有效减少在硬件采购、系统集成以及后期运维等方面的投资和运营成本。大规模的标准化生产与模块化组装,实现了规模经济,使得数据中心在提供强大功能的同时,保持着较高的成本效益。

此外,现代数据中心还具备自动化、远程操作和管理以及高可用性等特性。自动化使得数据中心内的诸多任务,如资源分配、故障检测与修复等,能够自动执行,减少了人工干预,提高了工作效率与准确性。远程操作和管理功能则突破了空间的限制,运维人员可以在任何有网络连接的地方,对数据中心进行实时监控与管理,极大地提升了管理的便捷性与灵活性。而高可用性则是数据中心的生命线,通过冗余设计、容错机制等一系列技术手段,确保数据中心在面对各种突发情况时,依然能够持续稳定地提供服务,保障业务的连续性。

2.3 虚拟化技术

在云计算的架构体系中,虚拟化技术占据核心地位,是推动云计算发展的关键驱动力。它对计算、存储、应用程序及网络设备等各类资源进行深度的高层次抽象。
在这里插入图片描述

传统模式下,资源使用者与资源实体紧密耦合,高度依赖特定种类的资源。虚拟化技术通过对底层资源实施统一管理与调度,显著降低了这种耦合程度。它在资源使用者与资源实体间构建起灵活的逻辑层,使使用者无需顾虑资源的具体物理特性与类别。

从资源整合与管理视角看,虚拟化技术将大量物理上分散的计算资源,在逻辑层面整合为一个有机整体。这一过程如同将离散的组件集成为一个有序系统,实现资源的按需分配。在实际应用场景中,不同应用程序对资源需求各异,虚拟化技术能够精准识别这些需求,并依据需求将计算、存储等资源合理分配。

此外,虚拟化技术赋予资源调度高度的灵活性与便捷性。如同精准调控复杂系统,资源调度者可依据业务需求,实时高效地调配资源。无论是调整应用的资源配额,还是在任务间快速转移资源,都能迅速完成。这种强大的资源调度能力,确保各类应用需求均能得到及时有效的满足,无论是小型初创企业的应用,还是大型企业复杂的业务系统,均可在虚拟化技术构建的资源环境中稳定运行并发挥最大效能。

2.4 Web 技术

Web 技术架构作为云计算应用的重要基石,由三个不可或缺的基本元素构成:统一资源定位器(URL)、标记语言( HTML )以及超文本传输协议(HTTP)。

统一资源定位器(URL),作为 Web 世界中资源的唯一标识符,如同现实世界中的地址,精准地定位着网络上的每一个资源,无论是网页、图片、视频还是其他各类文件。它通过特定的协议和路径规则,使得浏览器能够准确无误地找到并获取所需资源,为用户与服务器之间的交互搭建起了桥梁。

标记语言,例如广泛应用的 HTML(超文本标记语言),则负责定义网页的结构与内容展示方式。HTML 使用一系列的标签来描述文本、图像、链接、表格等元素,通过这些标签的组合与嵌套,构建出层次分明、结构清晰的网页布局。浏览器根据 HTML 标签的指示,将网页内容以可视化的形式呈现给用户,从而实现信息的有效传递。

超文本传输协议(HTTP)则是客户端与服务器之间进行数据传输和交互的规则集合。它详细规定了请求和响应消息的格式、内容以及交互流程。当客户端向服务器发送请求时,HTTP 协议确保请求消息按照既定格式准确传达,其中包含请求方法(如 GET、POST 等)、请求头(包含客户端环境、请求资源类型等信息)以及请求体(若有需要传递的数据)。服务器接收到请求后,依据 HTTP 协议规范进行解析,并按照相应逻辑处理请求,随后以符合 HTTP 协议的响应消息格式返回处理结果,包括状态码(如 200 表示成功,404 表示未找到资源)、响应头(包含服务器信息、数据类型等)以及响应体(实际返回的数据内容)。

在 Web 应用的架构设计领域,模型 - 视图 - 控制器(MVC)模式占据着举足轻重的地位。这一模式通过巧妙地将应用程序的不同功能模块进行分离,极大地提升了代码的可维护性、可扩展性以及可测试性。
在这里插入图片描述

模型(Model)是应用程序中专注于处理数据逻辑的核心部分。它承担着管理应用程序数据以及执行相关业务规则的重任。例如,在一个电子商务应用中,模型可能负责处理商品信息的存储、查询、更新,以及订单处理的逻辑运算,确保数据的完整性与一致性,同时遵循业务流程的规范。

视图(View)则主要负责用户界面的呈现工作。它的职责在于将模型中所管理的数据,以一种符合用户认知习惯且便于交互的方式展示出来。视图通常依赖于 HTML、CSS 和 JavaScript 等前端技术,将数据转化为直观的网页界面,使用户能够轻松地浏览、操作和理解应用程序所提供的信息。例如,在电商应用中,商品列表页面、购物车页面等都是视图的具体体现,它们根据从模型获取的数据,动态地生成相应的页面展示。

控制器(Controller)则扮演着模型与视图之间的桥梁角色。它接收来自用户的各种输入请求,这些请求可能是点击链接、提交表单等操作触发的。控制器根据接收到的请求,依据预先设定的逻辑,调用模型中的相应方法进行数据处理。例如,当用户在电商应用中提交订单时,控制器会调用模型中的订单处理逻辑,完成库存检查、价格计算等操作。处理完成后,控制器将模型返回的结果传递给合适的视图,以便将处理结果展示给用户。

2.5 多租户技术

多租户技术的核心目标在于实现多个用户,即租户,能够在逻辑层面上同时对同一个应用程序进行访问。这种架构模式的精妙之处在于,它为每个租户营造出一种仿佛独占应用程序的体验。具体而言,每个租户对于应用程序都拥有属于自己独特的视图。这意味着,租户所看到的应用程序界面布局、功能展示等方面,能够依据自身的需求和偏好进行定制呈现。

在这里插入图片描述

同时,每个租户还拥有应用程序的专有实例。从技术实现角度来看,这并非是为每个租户创建完全独立的物理应用副本,而是通过巧妙的资源隔离与分配机制,在逻辑上为每个租户模拟出专属的运行环境。在这种环境下,租户的应用操作、数据存储与处理等活动,都在各自独立的空间内进行。例如,通过数据库的分区技术,不同租户的数据能够分别存储在不同的分区中,确保数据的物理隔离;在应用服务器层面,利用容器技术或虚拟机技术,为每个租户提供独立的运行容器或虚拟机,保障应用程序实例的逻辑独立性。

更为关键的是,这种架构模式保证了租户之间的高度隔离性。每个租户不会意识到其他租户的存在,就如同在一个独立的软件世界中进行操作。而且,严格限制了租户之间的数据和配置信息的访问。这不仅是出于数据安全与隐私保护的考量,更是确保各租户业务独立性的必然要求。例如,一家金融机构租户的客户敏感信息,绝不能被其他非相关租户获取或访问,通过严谨的权限控制、数据加密以及网络隔离等技术手段,有效地杜绝了此类风险。

此外,多租户应用还赋予每个租户独立定制专属应用特性的能力。这一特性使得应用程序能够更好地契合不同租户多样化的业务需求。以客户关系管理(CRM)多租户应用为例,某些注重客户服务的租户可能希望定制一套更完善的客户反馈跟踪系统,而另一些侧重于销售拓展的租户则可能更关注潜在客户挖掘功能的强化。通过灵活的模块化设计和配置接口,多租户应用能够满足租户在不影响其他租户的前提下,对应用特性进行个性化定制,从而提升应用程序对不同业务场景的适配性和实用性。

2.6 服务技术

在云计算领域,服务技术无疑占据着基石般的重要地位,它构建起了 “作为服务” 这一云交付模型的底层架构。服务技术涵盖多个关键部分,其中 Web 服务与 REST 服务以及服务代理是其核心组成。

在这里插入图片描述

Web 服务包含一系列特定的技术标准与协议。Web 服务描述语言(WSDL)用于对 Web 服务的功能、输入输出参数等进行精确描述,使得其他系统能够清晰了解该服务的使用方式;XML 模式描述语言则为 XML 文档提供了一种模式定义,确保数据格式的一致性与规范性,这对于 Web 服务间的数据交互至关重要;简单对象访问协议(SOAP)作为一种基于 XML 的协议,负责在不同系统间进行结构化信息的交换,实现了平台无关性的远程过程调用;统一描述、发现和集成协议(UDDI)则致力于提供一种标准化的方式,用于发布、查找和集成 Web 服务,极大地增强了服务的可发现性与互操作性。

REST服务(表述性状态传递),作为一种轻量级且简洁的软件架构风格,与传统服务有着显著区别。REST 服务并不具备独立的技术接口,而是共享一个通用的技术接口。这种设计理念使得 REST 服务在资源访问与交互方面更加简洁高效,能够更好地适应分布式系统环境下的多样化需求。

服务代理则是一种基于事件驱动的程序机制。在运行过程中,它会实时拦截消息,并依据预设的规则和逻辑对这些消息进行相应处理。服务代理在云计算环境中扮演着不可或缺的角色,常被用于执行诸如监控、计量等特定任务。通过对系统中各类事件的监听与处理,服务代理能够保障云计算服务的稳定运行与高效管理,确保整个云交付模型的顺利实施。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/67096.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

QGraphicsView QGraphicsScene QGraphicsItem

QGraphicsView && QGraphicsScene &#xff1a; QGraphicsView 是 Qt 中用于显示和交互处理 2D 图形的控件&#xff0c;QGraphicsView 用于显示 QGraphicsScene 中的内容。 .h #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include &…

【大数据】机器学习-----线性模型

一、线性模型基本形式 线性模型旨在通过线性组合输入特征来预测输出。其一般形式为&#xff1a; 其中&#xff1a; x ( x 1 , x 2 , ⋯ , x d ) \mathbf{x}(x_1,x_2,\cdots,x_d) x(x1​,x2​,⋯,xd​) 是输入特征向量&#xff0c;包含 d d d 个特征。 w ( w 1 , w 2 , ⋯ ,…

基于千帆(ERNIE-Functions-8K)Function Calling的简单使用

1.Function Calling是什么&#xff1f; 1.1 概念 Function calling是一种将LLM(大语言模型Large language model)连接外部工具的能力&#xff0c;LLM经过微调后&#xff0c;可以检测出何时需要调用函数以及需要调用函数的方法名及参数&#xff0c;并返回给调用方以便调用外部…

Deep Attentional Guided Image Filtering

This work achieved the first place in the real depth map SR challenge held in ACM ICMR 2021. 目的&#xff1a;从一个target image(如低分辨的深度图)和guidance image(如高分辨的RGB图)&#xff0c;得到输出(如高分辨的深度图)。 主要思想是考虑了target和guidance之间的…

SpringBoot+Lombok项目实体属性名xXxx格式,前端接收不到

问题解析 今天发现后端传给前端的实体类中&#xff0c;有属性为xXxxx格式的&#xff0c;前端也使用相同名称接收&#xff0c;结果却不显示值&#xff01;研究了一会发现接口请求回来后&#xff0c;原xXxxx的属性名&#xff0c;会被转为全小写。具体原因为&#xff1a;使用Lombo…

高级运维:shell练习2

1、需求&#xff1a;判断192.168.1.0/24网络中&#xff0c;当前在线的ip有哪些&#xff0c;并编写脚本打印出来。 vim check.sh #!/bin/bash# 定义网络前缀 network_prefix"192.168.1"# 循环遍历1-254的IP for i in {1..254}; do# 构造完整的IP地址ip"$network_…

为深度学习创建PyTorch张量 - 最佳选项

为深度学习创建PyTorch张量 - 最佳选项 正如我们所看到的&#xff0c;PyTorch张量是torch.Tensor​ PyTorch类的实例。张量的抽象概念与PyTorch张量之间的区别在于&#xff0c;PyTorch张量为我们提供了一个可以在代码中操作的具体实现。 在上一篇文章中&#xff0c;我们看到了…

28.找出字符串中第一个匹配项的下标【力扣】KMP前缀表 ≈ find() 函数、暴力解法

class Solution { public: //得到前缀表void getNext(int *next,string needle){int j0;for(int i1;i<needle.size();i){while(j>0 && needle[j]!needle[i]) jnext[j-1];//**j>0**>j0是出口if(needle[i]needle[j]) j;next[i]j;//若写入if中&#xff0c;则该…

mysql 创建临时表报错

1. 问题描述 5.7.31 版本 mysql 数据库创建临时表报错 -- 报错语句 CREATE TEMPORARY TABLE temp_table_name SELECT * FROM table_name LIMIT 0;报错截图 [HY000][1005] Can’t create table ‘new_tbl’ (errno: 13) 2. 解决方案 步骤一&#xff1a; 查询 linux m…

使用 WPF 和 C# 将纹理应用于三角形

此示例展示了如何将纹理应用于三角形,以使场景比覆盖纯色的场景更逼真。以下是为三角形添加纹理的基本步骤。 创建一个MeshGeometry3D对象。像往常一样定义三角形的点和法线。通过向网格的TextureCoordinates集合添加值来设置三角形的纹理坐标。创建一个使用想要显示的纹理的 …

mac homebrew配置使用

本文介绍mac上homebrew工具的安装、配置过程。homebrew功能类似于centos的yum&#xff0c;用于软件包的管理&#xff0c;使用上有命令的差异。 本次配置过程使用mac&#xff0c;看官方文档&#xff0c;在linux上也可以用&#xff0c;但我没试过&#xff0c;有兴趣的同学可以试试…

OpenCV基础:矩阵的创建、检索与赋值

本文主要是介绍如何使用numpy进行矩阵的创建&#xff0c;以及从矩阵中读取数据&#xff0c;修改矩阵数据。 创建矩阵 import numpy as npa np.array([1,2,3]) b np.array([[1,2,3],[4,5,6]]) #print(a) #print(b)# 创建全0数组 eros矩阵 c np.zeros((8,8), np.uint8) #prin…

Unreal Engine 5 (UE5) Metahuman 的头部材质

在图中&#xff0c;你展示了 Unreal Engine 5 (UE5) Metahuman 的头部材质部分&#xff0c;列出了头部材质的多个元素。以下是对每个部分的解释&#xff1a; 材质解释 Element 0 - MI_HeadSynthesized_Baked 作用&#xff1a; 这是 Metahuman 的主要头部材质&#xff0c;控制整…

鸿蒙中自定义slider实现字体大小变化

ui&#xff1a; import { display, mediaquery, router } from kit.ArkUI import CommonConstants from ./CommonConstants; import PreferencesUtil from ./PreferencesUtil; import StyleConstants from ./StyleConstants;// 字体大小 Entry Component struct FontSize {Sta…

LabVIEW智能水肥一体灌溉控制系统

本文详细介绍了一种基于LabVIEW的智能水肥一体灌溉控制系统的设计与实现。该系统采用模糊控制策略&#xff0c;能够自动调节土壤湿度和肥液浓度&#xff0c;满足不同作物在不同生长阶段的需求&#xff0c;有效提高水肥利用效率&#xff0c;对现代精准农业具有重要的实践和推广价…

【高可用自动化体系】自动化体系

架构设计的愿景就是高可用、高性能、高扩展、高效率。为了实现架构设计四高愿景&#xff0c;需要实现自动化系统目标&#xff1a; 标准化。 流程自助化。 可视化&#xff1a;可观测系统各项指标、包括全链路跟踪。 自动化&#xff1a;ci/cd 自动化部署。 精细化&#xff1a…

Docker与虚拟机的区别及常用指令详解

在现代软件开发中&#xff0c;容器化和虚拟化技术已经成为不可或缺的工具。Docker和虚拟机&#xff08;VM&#xff09;是两种常见的技术&#xff0c; 它们都可以帮助开发者在不同的环境中运行应用程序。然而&#xff0c;它们的工作原理和使用场景有很大的不同。本文将详细探讨D…

【JVM-2.3】深入解析JVisualVM:Java性能监控与调优利器

在Java应用的开发和运维过程中&#xff0c;性能监控与调优是不可或缺的环节。无论是排查内存泄漏、分析CPU瓶颈&#xff0c;还是优化线程使用&#xff0c;开发者都需要借助一些强大的工具来辅助诊断。JVisualVM 正是这样一款由Oracle提供的免费工具&#xff0c;它集成了多种性能…

简聊MySQL并发事务中幻读、虚读问题的解决方案

在MySQL数据库中&#xff0c;事务的幻读和虚读问题是并发控制中的关键挑战。以下是针对这两个问题的解决方案及原理说明&#xff0c;并附上相关示例。 一、幻读问题及其解决方案 幻读问题的定义 幻读是指一个事务在前后两次查询同一个范围的时候&#xff0c;后一次查询看到了…

WINFORM - DevExpress -> gridcontrol ---->控件(ColumnEdit控件)

ImageComboBoxEdit--带图片的下拉菜单 DevExpress&#xff1a;带图片的下拉菜单ImageComboBoxEdit_weixin_34313182的博客-CSDN博客 ImageEdit--图片按钮 DevExpress控件中的gridcontrol表格控件&#xff0c;如何在属性中设置某一列显示为图片&#xff08;图片按钮&#xff…