云计算数据中心(一)
目录
- 一、云数据中心的特征
- 二、云数据中心网络部署
- (一)改进型树结构
- (二)递归层次结构
- (三)光交换网络
- (四)无线数据中心网络
- (五)软件定义网络
一、云数据中心的特征
云计算基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。将云计算与数据中心有效结合实现了优势互补。 云数据中心应具备以下几个特征。
- 高设备利用率:采用虚拟化技术进行系统和数据中心整合,优化资源利用率、简化管理。
- 绿色节能:通过先进的供电和散热技术,降低数据中心的能耗。
- 高可用性:当网络扩展或升级时,网络能够正常运行,对网络的性能影响不大。
- 自动化管理:云数据中心应是24×7小时无人值守并可远程管理的。
二、云数据中心网络部署
为了适应新型应用的需求,数据中心网络需要在低成本的前提下满足高扩展性、低配置开销、健壮性和节能的要求。对目前的数据中心网络体系结构做了对比,见下表:
网络拓扑 | 规模 | 带宽 | 容错性 | 扩展性 | 布线复杂性 | 成本 | 兼容性 | 配置开销 | 流量隔离 | 灵活性 |
---|---|---|---|---|---|---|---|---|---|---|
FatTree | 中 | 中 | 中 | 中 | 较高 | 较高 | 高 | 较高 | 无 | 低 |
VL2 | 大 | 大 | 中 | 中 | 较高 | 较高 | 中 | 较高 | 无 | 中 |
OSA | 小 | 大 | 差 | 中 | 较低 | 较高 | 低 | 中 | 无 | 高 |
WDCN | 小 | 大 | 较好 | 中 | 较低 | 中 | 中 | 中 | 无 | 高 |
DCell | 大 | 较大 | 较好 | 较好 | 高 | 较高 | 中 | 较高 | 无 | 较高 |
FiConn | 大 | 较大 | 较好 | 较好 | 较高 | 中 | 中 | 较高 | 无 | 较高 |
BCube | 小 | 大 | 好 | 较好 | 高 | 较高 | 中 | 较高 | 无 | 较高 |
MDCube | 大 | 大 | 较好 | 较好 | 高 | 高 | 中 | 较高 | 无 | 较高 |
(一)改进型树结构
与传统层次结构相比, FatTree结构有如下特点:消除了树形结构上层链路对吞吐量的限制;为内部节点间通信提供多条并行链路;横向扩展的尝试降低了构建数据中心网络的成本;与现有数据中心网络使用的以太网结构和IP 配置的服务器兼容。
但是,FatTree的扩展性受限于核心交换机端口数量,目前比较常用的是48端口10G核心交换机,在3层树结构中能够支持27648台主机。
微软数据中心采用了VL2架构,VL2是一套可扩展并十分灵活的网络架构。
(1)扁平寻址,这可以允许服务实例被放置到网络覆盖的任何地方。
(2)负载均衡将流量统一的分配到网络路径。
(3)终端系统的地址解析拓展到巨大的服务器池,并不需要将网络复杂度传递给网络控制平台。
VL2的核心思想是使用CLOS拓扑结构建立扁平的第二层网络。在VL2的体系结构中,应用程序使用服务地址通信而底层网络使用位置信息地址进行转发,这使得虚拟机能在网络中任意迁移而影响服务质量。
VL2仍然采用三层拓扑结构进行交换机级联。但不同的是,VL2中的各级交换机之间都采用10Gbps端口以减小布线开销。
在VL2中,IP地址仅仅作为名字使用,没有拓扑含义。VL2的寻址机制将服务器的名字与其位置分开。VL2使用可扩展、可靠的目录系统来维持名字和位置间的映射。当服务器发送分组时,服务器上的VL2代理开启目录系统以得到实际的目的位置,然后将分组发送到目的地。VL2是目前最易用于对现有数据中心网络改造的结构,但VL2依赖于中心化的基础设施来实现2层语义和资源整合,面临单点失效和扩展性问题。
(二)递归层次结构
在DCell网络的构建过程中,低层网络是基本的构建单元, n n n个服务器来连接一个具有 n n n个端口的交换机,每个DCell中的服务器有1个端口连接到交换机,称为0层端口,连接到0层端口和交换机的链路称为0层链路。每个低层网络中的每台服务器分别与其他每个低层网络中的某台服务器相连,因此,构建高层次网络时,需要的低层网络的个数等于每个低层网络中的服务器个数加1,其拓扑结构如图所示。如果将每个低层网络看成一个虚节点,则高层DCell网络是由若干个低层DCell网络构成的完全图。DCell拓扑的优势是网络可扩展性好,但其拓扑的层数受限于服务器的端口数。
FiConn的网络构建方式与DCell网络相似,其拓扑结构如图所示。但与DCell不同的是,FiConn中的服务器使用两个网卡端口(一个主用端口,一个备用端口),其中主用端口用于连接低层(第0层)网络,备用端口用于连接高层网络。
FiConn是一个递归定义的结构,高层FiConn由一些低层FiConn构建,Li等人将 k k k层FiConn标识为FiConn k _k k。第0层是基本的构建单元, n n n个服务器连接一个具有 n n n个端口的交换机,每个FiConn中的服务器有1个端口连接到第0层,如果服务器的备用端口没有连接到其他服务器,则称其为备用端口。
在进行层次化网络互连的过程中,每个低层FiConn网络中备用端口空闲的一半服务器会与其他相同层次的FiConn网络中备用端口空闲的服务器连接,构建高层次的FiConn网络。即如果一个FiConn k _k k中共有 b b b个服务器拥有可用备用端口,那么在每个FiConn k _k k中, b b b个服务器中的 b b b/2个拥有备用端口的服务器使用其备用端口连接到其他FiConn k _k k,这 b b b/2个被选择的服务器称为 k k k层服务器, k k k层服务器上被选择的端口称为 k k k层端口,连接 k k k层端口的链路称为 k k k层链路。与Dcell类似,如果将FiConn看成一个虚拟服务器,那么高层次的FiConn网络是由若于个低层次的FiConn网络构成的一个完全图。该拓扑方案的优点是不需要对服务器和交换机的硬件做任何修改,但每个FiConn对外连接的链路仍然有限,这使用FiConn的容错性较弱,且其路径长度较大,路由效率不高。
BCube使用交换机构建层次化网络,网络中主要包括服务器和交换机两种组件。BCube采用了递归的构建方法,拓扑结构如图所示。BCube第0层就是将 n n n个服务器连接到一个 n n n端口的交换机,然后通过若干台交换机将多个低层BCube网络互连起来,其中每个高层交换机与每个低层BCube网络都相连。 n n n=4,BCube第1层由4个BCube 0 _0 0和4个4端口交换机构成。更一般的情况是,BCube k _k k由 n n n个BCube k − 1 _{k-1} k−1和 n k n^k nk个 n n n端口交换机组成。每个BCube k _k k中的服务器有 k k k+1个端口,标记为level0到levelk。因此,一个BCube k _k k有 N = n k + 1 N=n^{k+1} N=nk+1个服务器和 k k k+1层交换机,每一层有 n k n^k nk个 n n n端口交换机。
BCube主要为集装箱规模的数据中心设计,采用的服务器为中心的体系结构充分利用了服务器和普通交换机的转发功能,在支持大量服务器的同时降低了构建成本,成为了数据中心网络的重要研究方向。其最大优势是链路资源非常丰富,提供了负载均衡, 不会出现明显的瓶颈链路,当发生服务器或者交换机失效时,BCube可以做到性能的优雅下降,从而维持了服务的可用性。但BCube服务器间存在 k k k+1条路径,在探测过程会造成较大的通信和计算开销,同时BCube要求每个服务器都要有 k k k+1个端口,这使得目前的很多现有服务器难以符合其要求,需要进行升级改造。
MDCube使用BCube中交换机的高速接口来互连多个BCube集装箱。为了支持数百个集装箱,它使用光纤作为高速链路,每个交换机将其高速接口作为其BCube集装箱的虚拟接口。因此,如果将每个BCube集装箱都当做一个虚拟节点,它将拥有多个虚拟接口。MDCube是一个多维的拓扑结构,它可以互连的数据中心集装箱的个数是所有维度上可容纳的数据中心个数的乘积。
(三)光交换网络
以前的数据中心,大多数网络数据流量在服务器和用户之间来回传输,但现在,随着Facebook、谷歌和亚马逊等越来越庞大和复杂的业务出现,数据中心内部和服务器间的数据流量快速增加,传统网络设备无法处理这么多的流量,这些变化使这些网络巨头开始考虑采用可光速传播数据的设备,重新修改网络拓扑。
Helios是谷歌、Facebook和其他技术巨头资助研发的混合电/光结构网络,它是一个两层的多根树结构,主要应用于集装箱规模的数据中心网络,其拓扑如图所示。 Helios将所有的服务器划分为若干集群,每个集群中的服务器连接到接入交换机,每个接入交换机与一个电交换网络和一个光网络连接。电网络是一个2层或3层的具有特定超额认购比例的树;在光部分,每个接入交换机仅有1个连接到其他机架交换机的光链路。该拓扑保证了服务器之间的通信可使用分组链路,也可使用光纤链路。
一个集中式的拓扑管理程序实时地对网络中各个服务器之间的流量进行监测,并对未来流量需求进行估算。拓扑管理程序会根据估算结果对网络资源进行动态配置,使流量大的数据流使用光纤链路进行传输,流量小的数据流仍然使用分组链路传输,从而实现网络资源的最佳利用。
OSA (optical Switching Architecture) 是Chen等人提出的基于光交换的数据中心网络体系结构,其体系结构如图所示。OSA的应用场景是集装箱规模的数据中心网络。OSA中主要引入了光交换矩阵(Optical Switching Matrix, OSM)和波长选择交换机(Wavelength Selective Switch, WSS)作为技术基础。
大部分光交换模块是双向N×N矩阵,任意输入端口可以连接到任意的输出端口。 目前流行的OSM技术使用MEMS (Micro-Electro-Mechanical Switch) 实现,它可以在10ms以内通过机械地调整镜子的微排列来更改输入和输出端口的连接。
一个波长选择交换机WSS是一个1×N交换机,由一个通用和N个波长端口组成。它将通用端口进入的波长集合分开在N个波长端口,这个过程可以在运行时以毫秒级进行配置。
OSA在网络内部采用了全光信号传输,仅在服务器与机架交换机之间使用电信号传输。OSA通过光交换机将所有机架交换机连接起来。由于服务器发出的都是电信号,因此OSA在机架交换机中放置光收发器 (Optical Transceiver),用于光电转换;然后利用波长选择交换机WSS将接收到的不同波长映射到不同的出端口;再通过光交换矩阵OSM在不同端口之间按需实现光交换。为了更有效地利用光交换机的端口,通过使用光环流器 (Optical Circulator) 实现在同一条光纤上双向传输数据。
OSA实现了多跳光信号传输,它使用逐跳交换来达到网络范围的连通性,不过在中间每一跳,都需要进行“光一电一光”的转换,在机架交换机进行交换。OSA的最大特点是利用光网络配置灵活的特点,能够根据实际需求动态调整拓扑,大大提高了应用的灵活性。
光交换比点交换方式具有潜在的更高的传输速率、更灵活的拓扑结构,并且其制冷成本更低,因而是数据中心网络很重要的研究方向。但由于光交换网络是面向连接的网络,将不可避免引入时延,这将对搜索等对时延要求较高的应用带来影响。另外,目前光交换网络的设计针对集装箱规模的数据中心,其规模有限,如何从体系结构和管理的角度设计和构建大规模数据中心网络是一项很有挑战性的工作。
(四)无线数据中心网络
无线技术可以在不必进行重新布线的情况下灵活调整拓扑,省去了复杂的布线工作,但无线技术在提供足够带宽的前提下,其传输距离是有限的,因而限制了其在大规模数据中心的部署。
(五)软件定义网络
软件定义网络(Software Defined Networking,SDN)作为新的网络架构成为最近学术界关注的热点,美国GENI、Internet2、欧洲OFELIA和日本的JGN2plus先后展开对SDN的研究和部署。
SDN相关的工作主要在三个相关组织开展,包括开放网络基金会ONF (Open Networking Foundation) 定义的OpenFlow架构;IETF的Software DrivenNetwork架构;ETSI的Network FunctionVirtualization架构。
OpenFlow是第一个针对SDN实现的标准接口,包括数据层与控制层之间的传输协议、控制上的API等。OpenFlow的基本思想是将路由器的控制平面和数据平面相分离,将控制功能从网络设备中分离出来,在网络设备上维护流表结构,数据分组按照流表进行转发,而流表的生成、维护、配置则由中央控制器来管理。OpenFlow的流表结构将网络处理层次扁平化,使得网络数据的处理满足细粒度的处理要求。在这种控制转发分离架构下,网络的逻辑控制功能和高层策略可以通过中央控制器灵活地进行动态管理和配置,可在不影响传统网络正常流量的情况下,在现有的网络中实现和部署新型网络架构。
OpenFlow主要由OpenFlow交换机、控制器两部分组成。OpenFlow交换机负责数据转发功能,主要技术细节由三部分组成:流表 (Flow Table)、安全信道 (Secure Channel) 和OpenFlow协议 (OpenFlow Protocol),如图所示。每个OpenFlow交换机的处理单元由流表构成,每个流表由许多流表项组成,流表项则代表转发规则。进入交换机的数据包通过查询流表来取得对应的操作。安全通道是连接OpenFlow交换机和控制器的接口,控制器通过这个接口,按照OpenFlow协议规定的格式来配置和管理OpenFlow交换机。在控制器中,网络操作系统 (Network Operating System, NOS) 实现控制逻辑功能,实际上,这里的NOS指的是SDN概念中的控制软件,通过在NOS上运行不同的应用程序能够实现不同的逻辑管控功能。目前NOX控制器成为OpenFlow网络控制器平台实现的基础和模板。NOX通过维护网络视图 (Network View) 来维护整个网络的基本信息,如拓扑、网络单元和提供的服务,运行在NOX之上的应用程序通过调用网络视图中的全局数据,进而操作OpenFlow交换机来对整个网络进行管理和控制。
Google在其广域网数据中心已经大规模使用基于OpenFlow的SDN技术,通过10G网络链接分布全球的12个数据中心,实现了数据中心的流量工程和实时管控功能,使其数据中心的核心网络带宽利用率提高到了100%,谷歌将自己的SDN网络命名为为B4,其网络结构图如图所示。
网络共分为三层:物理设备层 (Switch Hardware)、局部网络控制层 (Site Controllers) 和全局控制层 (Global)。一个Site就是一个数据中心。第一层的物理交换机是Google自行设计的,交换机里运行了OpenFlow协议,向上提供OpenFlow接口, 交换机把BGP/IS-IS协议报文送到Controller供其处理。OSFP、BGP、ISIS路由协议来自于开源的Quagga协议栈。第二层部署了几套网络控制器服务器 (NCS),每个服务器上都运行了一个Controller,一台交换机可以连接到多个Controller,但其中只有一个处于工作状态。一个Controller可以控制多台交换机,一个名叫Paxos的程序用来选出工作状态的Controller。在Controller上运行了两上应用,一个是RAP (Routing Application Proxy) 作为SDN应用与Quagga通信,另一个是TE Agent与全局的SDN网关 (Gateway) 通信。第三层中全局的TE Server通过SDN网关从各个数据中心的控制器收集链路信息,从而掌握路径信息。
经过上述改造之后,链路带宽利用率提高了3倍以上,接近100%,链路成本大大降低,而且网络更稳定,对路径失效的反应更快,大大简化了管理,也不再需要交换机使用大的包缓存,降低了对交换机的要求。Google这个基于SDN的网络改造项目影响非常大,对SDN的推广有着良好的示范作用。
相关文章:

云计算数据中心(一)
目录 一、云数据中心的特征二、云数据中心网络部署(一)改进型树结构(二)递归层次结构(三)光交换网络(四)无线数据中心网络(五)软件定义网络 一、云数据中心的…...

libwebrtc.a+exosip连接fS 环境部署tips
//运行FS服务器 sudo ./freeswitch -nc -nonat //公网sudo ./freeswitch //运行客户端 sudo ./fs_cli //加载模块 load mod_av load mod_verto0.Invite交互过程 1.fs码率设置 2.用户密码改动 3.数字签名的摘要 4.FS收不到ACK 5.公网部署 6.查看frewswitch都占用哪些端口 7.日志…...

第二证券:市场估值依然处于较低区域 适合中长期布局
A股中报成绩预告显示相比2024Q1,2024Q2企业产品销量或订单已有回暖,但价格反转暂未大面积到来,“量增价平、部分板块以价换量”是2024H1 A股成绩预告较显着的量价特征,这与微观库存周期有待回暖相匹配。此外中游部分环节出现不同程…...

开始Linux之路
人生得一知己足矣,斯世当以同怀视之。——鲁迅 Linux操作系统简单操作指令 1、ls指令2、pwd命令3、cd指令4、mkdir指令(重要)5、whoami命令6、创建一个普通用户7、重新认识指令8、which指令9、alias命令10、touch指令11、rmdir指令 及 rm指令(重要)12、man指令(重要…...

leetcode-三数之和
视频:https://www.bilibili.com/video/BV1bP411c7oJ/?spm_id_from333.788&vd_sourcedd84879fcf1be72f360461b01ecab0d6 从两数之和开始,排序后的两数之和,利用好升序的性质,可以将时间复杂度从on2降到on; class Solution …...

opencv—常用函数学习_“干货“_总
同样内容将拆解为一份份,发在我个人博客中 如http://t.csdnimg.cn/icOfX(非VIP文章),整理不易、感谢你的点赞收藏 目录 一、图像文件 1. imread:读取图像文件 2. imwrite:写入图像文件 3. imshow:显示图像 4. VideoCapture:捕获视频 二、创建Mat 1、创建Mat对…...

Spring Boot项目的控制器貌似只能get不能post问题
我这2天新建了一个Spring Boot项目测试,在控制器上写了两个接口,一个是支持Get方式访问,另一个支持Post方式访问,发现Get可以,而Post不行。前端Post后,报403,找不到这个方法。 一、原因 原因是…...

最新版智能修图-中文luminar ai 1.55(13797) 和 neo1.20,支持m芯片和intel芯片(绝对可用)
一。Luminar AI for macOS 完整版本 这个程序是第一个完全由人工智能驱动的图像编辑器。有了它,创建引人注目的照片是有趣的,令人惊讶的容易。它是一个独立的照片编辑器和macOS插件。 1.1 Luminar AI for macOS 轻轻地塑造和完善一个肖像打造富有表现…...

Open3D 最小二乘法拟合点云平面
目录 一、概述 1.1最小二乘法原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 2.2完整代码 三、实现效果 3.1原始点云 3.2matplotlib可视化 3.3平面拟合方程 前期试读,后续会将博客加入该专栏,欢迎订阅 Open3D点云算法与点云深度学习…...

【Django+Vue3 线上教育平台项目实战】登录功能模块之短信登录与钉钉三方登录
文章目录 前言一、几个关键概念1.HTTP无状态性2.Session机制3.Token认证4.JWT 二、通过手机号验证码登录1.前端短信登录界面2.发送短信接口与短信登录接口3.Vue 设置interceptors拦截器4. 服务端验证采用自定义中间件方式实现5. 操作流程及效果图如下: 三、通过第三…...

关于HBase、Phoenix、Flume、Maxwell 和 Flink
组件协同: HBase HBase 是一个分布式的、列存储的NoSQL数据库,它基于Google的Bigtable设计,特别适合存储海量的、稀疏的、非结构化或半结构化数据。HBase 提供了低延迟的随机读写能力,但其原生接口和数据模型较为复杂࿰…...

centos7停止维护,可替代的操作系统
CentOS 7 将在 2024 年 6 月 30 日停止维护。如果你目前正在使用 CentOS 7,可以考虑以下几种替代的操作系统: 1. CentOS Stream CentOS Stream 是 CentOS 项目的一个新版本,它提供了一个滚动发布的 Linux 发行版。CentOS Stream 位于 Fedor…...

andon系统在电力设备工管理中起到那些作用与价值
安灯系统,作为精益制造执行中的一个核心工具,在电力设备工厂车间管理中发挥着不可替代的作用,它能够实现生产透明管理,为工厂高效运作提供强大的支撑。本文将从安灯系统的功能、应用场景和价值三个方面,深入探讨其在电…...

消息队列-RabbitMQ
消息队列-RabbitMQ 1、RabbitMQ是什么?2、RabbitMQ的业务场景有哪些?3、RabbitMQ中有哪基本概念?4、RabbitMQ有哪些工作模式?5、如何保证RabbitMQ消息顺序性?6、RabbitMQ消息如何分发?7、RabbitMQ消息怎么路由?8、为什么会产生重复消费?如何保证消息不被重复消费(如何…...

Elasticsearch(ES)集群监控
Elasticsearch(ES)集群监控 在Elasticsearch中,监控集群的健康状况、性能和运行指标是至关重要的。以下是一些常用的Elasticsearch监控工具和API的例子: 使用Elasticsearch自带的API来获取集群健康状态、节点信息和统计信息。 # 获取集群健康状况 curl…...

图像处理:使用 OpenCV-Python 卡通化你的图像(2)
一、说明 在图像处理领域,将图像卡通化是一种新趋势。人们使用不同的应用程序将他们的图像转换为卡通图像。如今,玩弄图像是许多人的爱好。人们通常会点击图片并添加滤镜或使用不同的东西自定义图像并将其发布到社交媒体上。但我们是程序员,…...

淘宝扭蛋机小程序:旋转惊喜,开启购物新篇章!
在追求创新与惊喜的购物时代,淘宝再次引领潮流,精心打造——淘宝扭蛋机小程序,为您的购物之旅增添一抹不同寻常的色彩。这不仅仅是一个购物工具,更是一个充满趣味、互动与惊喜的宝藏盒子,等待您来探索与发现。 【旋转…...

JAVA零基础小白自学日志——第十七天
文章目录 1.方法的覆写2.类的层次结构3.如何判定正确的继承顺序4.如何判断子类继承(继承这个词我始终觉得很变扭)了父类的什么5.继承关系的实质6.关键字:super 和 this[1].this关键字(1)this关键字调用本类属性&#x…...

electron中app.whenReady()和app.on(‘ready‘)的区别
app.whenReady和app.on(‘ready’)都是用于在Electron应用程序中处理初始化完成事件的方法。app.whenReady是一个返回Promise的方法,它会在应用程序准备好创建窗口时解决。一旦app.whenReady被调用,就可以安全地创建窗口,因为此时Electron的初…...

技术速递|Let’s Learn .NET Aspire – 开始您的云原生之旅!
作者:James Montemagno 排版:Alan Wang Let’s Learn .NET 是我们全球性的直播学习活动。在过去 3 年里,来自世界各地的开发人员与团队成员一起学习最新的 .NET 技术,并参加现场研讨会学习如何使用它!最重要的是&#…...

JSONNode树形解析或流式解析
哈喽,大家好,我是木头左! 什么是JSONNode? JSONNode是一个用于处理JSON数据的数据结构,它提供了一种简单、灵活、高效的方式来操作JSON数据。JSONNode可以看作是一个树形结构,其中每个节点都可以包含一个值…...

自制迷宫游戏 c++
竞赛的同时也不能忘记娱乐,劳逸结合,我们自研了迷宫游戏,只能在DEV C 运行哦 #include<bits/stdc.h> #include<iomanip> #include<iostream> #include<cstdlib> #include<ctime> #include<conio.h> #include<win…...

基于复旦微JFMQL100TAI的全国产化FPGA+AI人工智能异构计算平台,兼容XC7Z045-2FFG900I
基于上海复旦微电子FMQL45T900的全国产化ARM核心板。该核心板将复旦微的FMQL45T900(与XILINX的XC7Z045-2FFG900I兼容)的最小系统集成在了一个87*117mm的核心板上,可以作为一个核心模块,进行功能性扩展,能够快速的搭建起…...

【数学建模】技术革新——Lingo的使用超详解
目录 基础知识 1. 变量声明 示例 2. 常量声明 语法格式 示例 3. 目标函数 语法格式 示例 4. 约束条件 语法格式 示例 5. 完整的Lingo模型示例 示例 解释 6. 整数变量声明 语法格式 示例 7. 非线性规划 示例 8. 多目标优化 语法格式 示例 9. 数据输入与…...

LLM-阿里 DashVector + langchain self-querying retriever 优化 RAG 实践【Query 优化】
文章目录 前言self querying 简介代码实现总结 前言 现在比较流行的 RAG 检索就是通过大模型 embedding 算法将数据嵌入向量数据库中,然后在将用户的查询向量化,从向量数据库中召回相似性数据,构造成 context template, 放到 LLM 中进行查询…...

【python】PyQt5的窗口界面的各种交互逻辑实现,轻松掌控图形化界面程序
✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…...

DockerCompose介绍,安装,使用
DockerCompose 1、Compose介绍 将单机服务-通过Dockerfile 构建为镜像 -docker run 成为一个服务 user 8080 net 7000 pay 8181 admin 5000 监控 .... docker run 单机版、一个个容器启动和停止问题: 前面我们使用Docker的时候,定义 Dockerfil…...

N叉树的前序遍历
Problem: 589. N 叉树的前序遍历 文章目录 思路解题过程Code 思路 前序遍历,遇到空节点返回 解题过程 对每个节点进行遍历 Code /* // Definition for a Node. class Node { public:int val;vector<Node*> children;Node() {}Node(int _val) {val _val;}Nod…...

Linux C++ 054-设计模式之外观模式
Linux C 054-设计模式之外观模式 本节关键字:Linux、C、设计模式、外观模式 相关库函数: 概念 外观模式(Facade),亦称“过程模式”。主张按照描述和判断资料来评价课程,关键的活动是在课程实施的全过程中…...

Linux - 冯-诺依曼体系结构、初始操作系统
目录 冯•诺依曼体系 结构推导 内存提高效率的方法 数据的流动过程 体系结构相关知识 初始操作系统 定位 设计目的 操作系统之上之下分别有什么 管理精髓:先描述,再组织 冯•诺依曼体系 结构推导 计算机基本工作流程图大致如下: 输入设备&a…...