当前位置: 首页 > news >正文

云计算基础技术

存储类技术

云上数据如何存储

  • 存储介质的作用:数据存储是数据流在加工过程中产生的临时文件或加工过程中需要查找的信息。数据以某种格式记录在计算机内部或外部存储媒介上。
  • 为什么会出现云存储?
  • 在解决数据存储问题上,现有的云存储产品已经能够做到在效率和成本上的同步降低,所以,摒弃原始的存储方式,选择云存储会将是个人、企业的必然选择。

主流的存储类型

  • 最初的服务器是计算存储合一的,使用服务器本地存储存放数据,这就是块存储的始祖,通过服务器内部总线连接磁盘,可以达到很低的时延,但是服务器可以承载的磁盘数量有限,在容量、带宽以及可靠性上有所欠缺。随着IT的发展,数据越来越多,对数据可靠性的要求越来越高,就有了计算、存储分离的需求,这时就有了存储阵列。传统的磁盘阵列采用控制器+磁盘框的架构,控制器采用双机头或者多机头设计,可靠性更高,通过扩展磁盘框,存储容量相比服务器本地磁盘,有了成百上干倍的提高独立地通过FC交换机或者IP交换机与服务器相连,这就是现代的块存储。
  • 随着IT系统的进一步发展,企业内的协同办公诉求出现,需要将同一个目录/文件夹共享给多个主机访问,这时便出现了共享文件系统,将目录/文件夹共享给多个主机访问,这就是共享文件存储。文件存储还是在一个数据中心/机房内共享数据。
  • 随着互联网的兴起,许多互联网应用需要通过终端设备由公网访问数据,这时支持HTTP/HTTPS协议的对象存储就开始大规模使用了。对象存储支持应用端通过API调用的方式存取数据,并且采用分布式的架构设计,具备大容量、高可靠的特点。
块存储的简介

  • 块存储是无法直接在操作系统中使用的,必须对块存储进行格式化、创建文件系统后才能使用,操作系统中的数据都是按照文件的格式存放的。
  • 块存储适用于数据库、ERP等企业核心应用的存储,具有三大存储中最低的时延。
文件存储的简介

  • NFS:Network File System,网络文件系统,Unix系统之间共享文件的一种协议,NFS的客户端主要为Linux。
  • CIFS:Common Internet File System,通用网络文件系统,是一个新提出的协议,它使程序可以访问远程Internet计算机上的文件并要求此计算机提供服务。CIFS的客户端主要为Windows。
  • 文件存储适用于HPC、企业OA等需要存储数据被多个计算机点共享的场景,具备PB级别的容量,ms级别的时延。
对象存储的简介

  • 超大规模数据管理能力是对象存储相对于文件存储的最大优势。File Storage采用了树形结构对所有文件和目录进行管理,当文件或目录过多时,文件或目录的检索性能就会极大下降。Object Storage只有目录和对象两层结构,这种扁平化的结构即使对象数量达到百亿级别,对象的检索速度依然不会有大的变化。但对象存储接口是应用级接口,而不是系统级接口,因此传统应用迁移到对象存储时需要重新开发,这是对象存储规模应用的最大困难,
  • 对象存储适用于大数据、IOT、备份归档等场景,具有EB级别的容量和3大存储中最高的数据可靠性。

企业存储的发展过程

  • DAS即直接连接存储(Direct Attached storage),DAS是指将外置存储设备通过SCSI或FC接口直接连接到应用服务器上,存储设备是整个服务器结构的一部分。在这种情况下,数据和操作系统往往都未分离。
  • NAS即网络接入存储(Network Attached Storage),NAS采用网络技术(TCP/IP.ATM、FDDI),通过网络交换机连接存储系统和服务器主机来建立存储私网。其主要特征是把存储设备、网络接口和以太网技术集成在一起,直接通过以太网网络存取数据。也就是把存储功能从通用文件服务器中分离出来。
  • SAN即存储区域网络(Storage Area Network),SAN是通过交换机连接存储阵列和服务器,建立专用数据存储的存储私网。

什么是分布式存储技术

  • 分布式存储是一种数据存储技术,通过网络使用企业中的每台机器上的磁盘空间,并将这些分散的存储资源构成一个虚拟的存储设备,数据分散地存储在企业的各个角落。提高了系统的可靠性、可用性和存取效率等

  • 实际上,使用分布式存储是“被迫”的,因为随着互联网的飞速发展、应用越来越丰富、用户数量越来越多、数据也成几何级增长,海量数据的存储给本地存储带了巨大压力,存储系统已经不堪重负,处于崩溃的边缘,因此,必须通过其他手段分散存储系统压力,分布式存储和分布式文件系统应运而生。
  • 如何保证分布式存储的高性能与高可用?
  • 除了传统架构里面的备份、双活、多活这种架构之外,为了保证分布式存储系统的高可靠和高可用,数据在系统中一般存储多个副本。当某个存储节点出故障时,系统能够自动将服务切换到其他的副本,从而实现自动容错。分布式存储系统通过复制协议将数据同步到多个存储节点,并确保多个副本之间的数据一致性。同一份数据有多个副本,仅有一个为主副本,其他的副本为备份副本,数据从主副本复制到备份副本,采用最终一致性来保证数据完整。

存储在云计算中的服务形态

  • 云硬盘(Elastic Volume Service)是一种为ECS、BMS等计算服务提供持久性块存储的服务,通过数据兄余和缓存加速等多项技术,提供高可用性和持久性,以及稳定的低时延性能。用户可以对云硬盘做格式化、创建文件系统等操作,并对数据做持久化存储。
  • 提供按需扩展的高性能文件存储(NAS),可为云上多个弹性云服务器(ElasticCloud Server,ECS),容器(CCE&CCI),裸金属服务器(BMS)提供共享访问。
  • 对象存储服务(Object Storage Service)是一款稳定、安全、高效、易用的云存储服务,具备标准Restful API接口,可存储任意数量和形式的非结构化数据。

思考题
(判断题)桥接和NAT的实现原理是相同的。
正确
错误
(单选题)以下哪一个不是当前主流的存储类型?
A.块存储
B.对象存储
C.磁带库
D.文件存储

  • 错误。桥接只是将虚拟机的网口接到了物理网口上,从而出物理服务器。而NAT是通过网络地址转换,来实现虚拟机的流量从物理网口出去的目的。
  • C。当前主流的存储类型主要有3个:块、文件、对象。磁带也算一个存储介质,但是已经被逐步淘汰了,只出现在一些备份归档的场景中。

本章总结

  • 本章主要介绍了云计算的一些基本知识以及计算类、网络类、存储类的一些基础技术。通过这些知识和技术,我们对云计算有了比较好的认识,也对云服务有了初步的印象。在后面的章节中,我们将继续了解相关的云服务。

 学习推荐

  • 华为Learning网站 http://support.huawei.com/learning/Index!toTrainindex
  • 华为云技术支持网站 https://support.huaweicloud.com/help-novice.html
  • 华为云学院 https://edu.huaweicloud.com

术语和缩略语

  • APP:Application,应用
  • AS:Auto Scaling,弹性伸缩
  • CPU:Central Processing Unit,中央处理器
  • CCE:Cloud Container Engine,云容器引擎
  • CCl:Cloud Container Instance,云容器实例
  • CIFS:Common Internet File System,通用网络文件系统
  • ECS:Elastic Cloud Server,弹性云服务器
  • EIP:Elastic IP,弹性IP
  • EVS:Elastic Volume Service,弹性云硬盘 
  • GPU:Graphics Processing Unit,图形处理器
  • ICT:Information and Communications Technology,信息通信技术
  • I/O:Input/Output,输入/输出
  • laaS:Infrastructure as a Service,基础设施即服务
  • lBM:International Business Machines Corporation,  国际商业机器公司
  • KVM:Kernel-based Virtual Machine,开源虚拟机
  • IMS:Image Management Service,镜像管理服务
  • LXC:Linux Container,Linux容器
  • LVM:Logical Volume Manager,逻辑卷管理
  • NAT:Network Address Translation,网络地址转换
  • NFS:Network File System,网络文件系统
  • NIST:National Institute of Standards and Technology,美国国家标准与技术研究院
  • OS:Operation System,操作系统
  • OBS:Object Storage Service,对象存储服务
  • PC:Personal Computer,个人电脑
  • PaaS:Platform as aService,平台即服务
  • RAlD:Redundant Arrays of Independent Disks,独立磁盘冗余阵列
  • SFS:Scalable File Service,弹性文件服务

相关文章:

云计算基础技术

存储类技术 云上数据如何存储 存储介质的作用:数据存储是数据流在加工过程中产生的临时文件或加工过程中需要查找的信息。数据以某种格式记录在计算机内部或外部存储媒介上。为什么会出现云存储?在解决数据存储问题上,现有的云存储产品已经能够做到在效率和成本上…...

【动态规划】2306. 公司命名

本文涉及知识点 动态规划汇总 LeetCode 2306. 公司命名 给你一个字符串数组 ideas 表示在公司命名过程中使用的名字列表。公司命名流程如下: 从 ideas 中选择 2 个 不同 名字,称为 ideaA 和 ideaB 。 交换 ideaA 和 ideaB 的首字母。 如果得到的两个新…...

熟练掌握爬虫技术

一、Crawler、Requests反爬破解 1. HTTP协议与WEB开发 1. 什么是请求头请求体,响应头响应体 2. URL地址包括什么 3. get请求和post请求到底是什么 4. Content-Type是什么1.1 简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)…...

基于Spring Boot与Vue的智能房产匹配平台+文档

博主介绍:✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 温馨提示:文末有 CSDN 平台官方提供的老师 Wechat / QQ 名片 :) Java精品实战案例《700套》 2025最新毕业设计选题推荐:最热的500个选题…...

【VMware】VMware 开启的虚拟机无法联网的解决方案

目录 🌊1. 问题说明 🌊2. 解决方案 🌍2.1 查看虚拟网络编辑器 🌍2.2 设置 vmnet 🌍2.3 设置虚拟机网络 🌍2.4 Xshell连接虚拟机 🌊1. 问题说明 虚拟机 ping 其他网页显示失败,比如&#…...

linux——线程

在 Linux 系统中,进程和线程是两种重要的并发执行单元。本文将详细介绍它们的区别、使用场景、以及多线程编程中的关键API和示例代码。 进程与线程的区别 进程 进程是程序运行的一个实例,承担分配系统资源的基本单位。每个进程都有独立的地址空间&…...

install nebula with source

linux 环境:ubuntu 2004 默认gcc 7.5 nebula requerment: g 8.5 above 下载source git clone --branch release-3.8 https://github.com/vesoft-inc/nebula.git install gcc g 11 apt install gcc-11 g-11 此时 linux环境存在多个版本gcc&#xff1a…...

拆分盘投资策略解析:机制、案例与风险考量

一、引言 随着互联网技术的迅猛发展和金融市场的不断创新,拆分盘这一投资模式逐渐崭露头角,成为投资者关注的焦点。它基于特定的拆分策略,通过调整投资者持有的份额和单价,实现了看似稳健的资产增长。本文旨在深入探讨拆分盘的运…...

Redis主从复制、哨兵模式以及Cluster集群

一.主从复制 1.主从复制的概念 主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(Master),后者称为从节点(Slave);数据的复制是单向的,只能由主节点到从节点。默认情况下,…...

【chatgpt】npy文件和npz文件区别

npy文件和npz文件都是用于存储NumPy数组的文件格式。它们的主要区别如下: npy文件:这种文件格式用于存储单个NumPy数组。它是一种简单的二进制文件格式,可以快速地读写NumPy数组。 npz文件:这种文件格式是一个压缩包,…...

为什么IP地址会被列入黑名单?

您是否曾经历过网站访客数量骤减或电子邮件投递失败的困扰?这背后或许隐藏着一个常被忽略的原因:您的IP地址可能已经被列入了黑名单内。尽管您并没有进行任何违法的网络操作,但这个问题依然可能出现。那么,究竟黑名单是什么&#…...

【OceanBase诊断调优】—— 如何查找表被哪些其它表引用外键

本文详述如何查找指定表是否被其他表引用做外键。 适用版本 OceanBase 数据库所有版本。 MySQL 租户 obclient> select * from INFORMATION_SCHEMA.KEY_COLUMN_USAGE where REFERENCED_TABLE_NAME表名;Oracle 租户 obclient> SELECT TABLE_NAME FROM dba_constraint…...

网络编程常见问题

1、TCP状态迁移图 2、TCP三次握手过程 2.1、握手流程 1、TCP服务器进程先创建传输控制块TCB,时刻准备接受客户进程的连接请求,此时服务器就进入了LISTEN(监听)状态; 2、TCP客户进程也是先创建传输控制块TCB&#xff…...

回调函数的使用详解

实际工作中&#xff0c;经常使用回调函数。用来实现触发等机制&#xff0c;也是基于一些已开发好的底层平台&#xff0c;开发上层应用的常用方法。下面对回调函数做一个详细的解释。 目录 1. 简单的回调函数实例 2. C11&#xff0c;使用function<>的写法 3. 注册函数 …...

<电力行业> - 《第8课:输电(一)》

1 输电环节的意义 电能的传输&#xff0c;是电力系统整体功能的重要组成环节。发电厂与电力负荷中心通常都位于不同地区。在水力、煤炭等一次能源资源条件适宜的地点建立发电厂&#xff0c;通过输电可以将电能输送到远离发电厂的负荷中心&#xff0c;使电能的开发和利用超越地…...

【python学习】 __pycache__ 文件是什么

__pycache__文件是Python中的一个特殊目录&#xff0c;主要用于存储已编译的字节码文件&#xff08;.pyc文件&#xff09;。以下是关于__pycache__文件的详细解释&#xff1a; 作用&#xff1a;当Python解释器执行一个模块时&#xff0c;它会首先检查是否存在对应的.pyc文件。…...

论文阅读_基本于文本嵌入的信息提取

英文名&#xff1a;Embedding-based Retrieval with LLM for Effective Agriculture Information Extracting from Unstructured Data 中文名&#xff1a;基于嵌入的检索&#xff0c;LLM 从非结构化数据中提取有效的农业信息 地址: https://arxiv.org/abs/2308.03107 时间&…...

kafka学习笔记08

Springboot项目整合spring-kafka依赖包配置 有这种方式&#xff0c;就是可以是把之前test里的配置在这写上&#xff0c;用Bean注解上。 现在来介绍第二种方式&#xff1a; 1.添加kafka依赖&#xff1a; 2.添加kafka配置方式: 编写代码发送消息&#xff1a; 测试&#xff1a; …...

Flask的 preprocess_request

理解 Flask 类似框架中的 preprocess_request 方法 在 Flask 类似的 web 框架中&#xff0c;preprocess_request 方法是一个关键组件。它在请求被分派之前调用&#xff0c;用于执行一些预处理操作。让我们一步一步来理解这个方法的工作原理。 1. 方法概述 首先&#xff0c;我…...

重温react-05(类组件生命周期和性能优化)

类组件的生命周期 import React, { Component } from reactexport default class learnReact05 extends Component {state {number: 1}render() {return (<div>{this.state.number}</div>)}// 一般将请求的方法,放在这个生命周期componentDidMount() {setInterva…...

RHCE四---web服务器的高级优化方案

一、Web服务器&#xff08;2&#xff09; 基于https协议的静态网站 概念解释 HTTPS&#xff08;全称&#xff1a;Hyper Text Transfer Protocol over Secure Socket Layer 或 Hypertext TransferProtocol Secure&#xff0c;超文本传输安全协议&#xff09;&#xff0c;是以…...

Pytest集成Allure生成测试报告

# 运行并输出报告在Report文件夹下 查看生成的allure报告 1. 生成allure报告&#xff1a;pycharm terminal中输入命令&#xff1a;产生报告文件夹 pytest -s --alluredir../report 2. pycharm terminal中输入命令&#xff1a;查看生成的allure报告 allure serve ../report …...

SpringBoot 参数校验

参数校验 引入springvalidation依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId> </dependency>参数前添加Pattern public Result registry(Pattern(regexp &qu…...

【Arduino】实验使用ESP32控制可编程继电器制作跑马灯(图文)

今天小飞鱼实验使用ESP控制继电器&#xff0c;为了更好的掌握继电器的使用方法这里实验做了一个跑马灯的效果。 这里用到的可编程继电器&#xff0c;起始原理并不复杂&#xff0c;同样需要ESP32控制针脚输出高电平或低电平给到继电器&#xff0c;继电器使用这个信号控制一个电…...

islower()方法——判断字符串是否全由小写字母组成

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 语法参考 islower()方法用于判断字符串是否由小写字母组成。islower()方法的语法格式如下&#xff1a; str.islower() 如果字符串中包含至少一个区…...

发布/订阅模式

实现发布/订阅模式的基本思路是通过一个中介者&#xff08;发布者&#xff09;来管理订阅者&#xff08;监听器&#xff09;&#xff0c;并在特定事件发生时通知所有订阅者执行相应的操作。下面是实现发布/订阅模式的基本思路&#xff1a; 创建发布者对象&#xff1a;首先&…...

K8S Pod常见状态

这是自己所遇到 Pod 常见状态及可能原因&#xff0c;持续更新。 如有其他的错误状态&#xff0c;可私我更新 1. ImagePullBackOff 问题分析&#xff1a; 镜像拉取失败。 可能原因&#xff1a; 可能是网络问题导致&#xff0c;检查Pod所在节点是否能够正常访问网络; 镜…...

Hadoop3:Yarn常用Shell命令

一、查看任务 1、查看所有任务 yarn application -list2、根据状态查看任务 语法 yarn application -list -appStates &#xff08;所有状态&#xff1a;ALL、NEW、NEW_SAVING、SUBMITTED、ACCEPTED、RUNNING、FINISHED、FAILED、KILLED&#xff09;例如 yarn application…...

15.数据库简介+MySQl使用+SQL语句

文章目录 数据库简述一.数据库简介DB1.定义:2.DBMS数据库管理系统3.数据库分类 二.MySQL的安装1.安装步骤2.MySQL数据库图形管理工具3.mysql程序常用命令4.MySQL字符集及字符序5.Navicat快捷键操作 三.MySQL数据库基本操作 .........................................表管理一.…...

AI入门系列:工具篇之ChatGPT的优秀的国内替代品

文章目录 一&#xff0c;智谱清言(ChatGLM)1&#xff0c;智谱清言简介2&#xff0c;[智谱清言地址&#xff0c;点我开始用吧](https://chatglm.cn/) 二&#xff0c;Kimi智能助手1&#xff0c;Kimi简介2&#xff0c;[Kimi地址&#xff0c;点我开始用吧](https://kimi.moonshot.c…...

改机软件有哪些?实现一键新机、改串号、改IMEI和手机参数的需求 硬改手机软件,新机环境模拟 设备伪装,一键改机,一键复原

这次针对可以直接开端口修改参数的机型做一些工具解析 前面接触合作过很多工作室。其中很多工作室对于各自软件的跳验证有各自的需求。 一个机型各项参数一般有IMEI WiFi 蓝牙 sn psb ESN等等。 针对这些参数的修改首先要明白各自软件检测的具体是哪些参数来验证。 对于常用…...

如何快速使用JNI

文章目录 1_JNI是什么&#xff1f;2_使用3_扩展 1_JNI是什么&#xff1f; JNI 是Java Native Interface的缩写&#xff0c;通过JNI&#xff0c;允许Java代码与其他语言&#xff08;通常是C或C&#xff09;编写的本地应用程序或库进行交互。简而言之就是&#xff0c;Java可以通…...

simulink开发stm32,使用中断模块,无法产生中断,其中包括使用timer模块,以及ADC都无法产生中断,需要注意的地方

1&#xff0c;其中包括使用timer模块&#xff0c;以及ADC都无法产生中断&#xff0c;需要注意的地方 原来是需要在配置文件里开启一下timer的中断&#xff0c;其他模块自动加载ioc就可以了&#xff0c;这个timer需要注意力&#xff0c;需要自己勾选一下 如下图&#xff1a; 看…...

C# 如何单纯的优化循环

Parallel.For(0, 10000, i >{// 并行执行的代码块// 例如: Console.WriteLine(i);}); 这种循环比 单纯常用的for 和 foreach 要稍微快一点 但是呢如果循环里面写的是非常简单的业务逻辑 的话 for和foreach 要更胜一筹一点 Parallel 原理就好像我一个人忙不过来可以多找几个…...

【鸿蒙学习笔记】@Extend装饰器:定义扩展组件样式

官方文档&#xff1a;Extend装饰器&#xff1a;定义扩展组件样式 [Q&A] Extend装饰器 作用 Extend用于扩展原生组件样式。 [Q&A] Extend装饰器 特点 &#xff11;・Extend仅支持在全局定义&#xff0c;不支持在组件内部定义。 &#xff12;・Extend支持封装指定组件的…...

【Docker项目实战篇】Docker部署PDF多功能工具Stirling-PDF

【Docker项目实战篇】Docker部署PDF多功能工具Stirling-PDF 前言一、Stirling-PDF介绍1.1 Stirling-PDF简介1.2 Stirling-PDF功能 二、本次实践规划2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四…...

【算法训练记录——Day37】

Day37——贪心Ⅴ 1.leetcode_56合并区间 1.leetcode_56合并区间 思路&#xff1a;排序&#xff0c;如果重叠&#xff0c;更新right 为max(right, curVal), 不重叠就加入res,需要单独考虑最后一次&#xff0c;因为每次都是在下一次遍历开始时判断是否加入res&#xff0c;因此 当…...

OpenCV 张正友标定法(二)

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 在之前的博客OpenCV 张氏标定法中,我们没有考虑镜头畸变等因素,因此计算出的内参与外参均是理想情况下的数值,而如果我们考虑到镜头的畸变: 我们就需要考虑使用最小二乘法最小化像素坐标的重投影误差(上述所求…...

LeetCode题练习与总结:环形链表Ⅱ--142

一、题目描述 给定一个链表的头节点 head &#xff0c;返回链表开始入环的第一个节点。 如果链表无环&#xff0c;则返回 null。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测…...

【kaptcha】kaptcha验证码的使用-SpringBoot集成

Kaptcha验证码的依赖 <dependency><groupId>com.github.penggle</groupId><artifactId>kaptcha</artifactId><version>2.3.2</version> </dependency> Kaptcha验证码的配置类&#xff0c;对验证码的一些属性进行配置&#x…...

golang template模板嵌套语法 为何不能使用变量 底层源码解析

我们都知道在golang的模板语法中&#xff0c;我们可以使用template关键字嵌套其他模块&#xff0c; 如&#xff1a; {{template "模板文件名" .}} 然而&#xff0c;这里的 “模板文件名” 是不能使用变量的&#xff01; 注意这里最后的的 . 这个实际上是templa…...

【Linux】线程Thread

&#x1f525;博客主页&#xff1a; 我要成为C领域大神&#x1f3a5;系列专栏&#xff1a;【C核心编程】 【计算机网络】 【Linux编程】 【操作系统】 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 本博客致力于知识分享&#xff0c;与更多的人进行学习交流 ​ ​ 线程概述 …...

RAG技术:在自然语言处理中的深度融合与创新

在自然语言处理&#xff08;NLP&#xff09;领域&#xff0c;随着技术的不断进步&#xff0c;我们见证了各种创新方法的涌现。其中&#xff0c;检索增强生成&#xff08;Retrieval-Augmented Generation&#xff0c;简称RAG&#xff09;技术以其独特的优势&#xff0c;逐渐成为…...

什么是std::bind

2024年6月29日&#xff0c;周日下午 std::bind 是一个C11标准库中的函数&#xff0c;它用于将一个函数或函数对象与特定的参数绑定在一起&#xff0c;生成一个新的函数对象。 std::bind通常和std::function一起使用&#xff0c;因为std::function可以作为一个函数容器来接收st…...

C语言的数据结构:树与二叉树(哈夫曼树篇)

前言 上篇讲完了二叉树&#xff0c;二叉树的查找性能要比树好很多&#xff0c;如平衡二叉树保证左右两边节点层级相差不会大于1&#xff0c;其查找的时间复杂度仅为 l o g 2 n log_2n log2​n&#xff0c;在两边层级相同时&#xff0c;其查找速度接近于二分查找。1w条数据&am…...

docker 安装syslog

Syslog-ng是一个可靠、多功能的日志管理系统&#xff0c;用于收集日志并将其转发到指定的日志分析工具。 使用Docker CLI方式搭建 步骤 1: 拉取Syslog-ng镜像 首先&#xff0c;需要从Docker Hub拉取Syslog-ng的官方镜像。 docker pull balabit/syslog-ng:latest 步骤 2: 启动…...

什么是无头浏览器?

简而言之&#xff0c;无头浏览器是没有图形用户界面 &#xff08;GUI&#xff09; 的 Web 浏览器。GUI 包括用户与之交互的数字元素&#xff0c;例如按钮、图标和窗口。但是&#xff0c;关于无头浏览器&#xff0c;您需要了解的还有很多。 在本文中&#xff0c;您将了解什么是…...

【面试干货】与的区别:位运算符与逻辑运算符的深入探讨

【面试干货】&与&&的区别&#xff1a;位运算符与逻辑运算符的深入探讨 1、&&#xff1a;位运算符2、&&&#xff1a;逻辑运算符3、&与&&的区别 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; & 和 …...

搭建Renesas R7FA8D1BHECBD-BTB的开发调试环境(DAP-LINK: N32G45XVL-STB)

目录 概述 1 软硬件 1.1 软硬件环境信息 1.2 开发板信息 1.3 调试器信息 2 FSP和KEIL产生测试项目 2.1 FSP生成项目 2.2 Keil中配置 3 硬件连接框图 4 一个测试案例 4.1 功能介绍 4.2 定时器函数 5 测试 搭建Renesas R7FA8D1BHECBD-BTB的开发调试环境&#xff08…...

探索人工智能和LLM对未来就业的影响

近年来&#xff0c;人工智能&#xff08;AI&#xff09;迅猛发展&#xff0c;引发了人们的兴奋&#xff0c;同时也引发了人们对就业未来的担忧。大型语言模型&#xff08;LLM&#xff09;就是最新的例子。这些强大的人工智能子集经过大量文本数据的训练&#xff0c;以理解和生成…...

系统进行分库分表的拆分,读写分离的高可用架构。以及对于海量的C端接口查询接入ES搜索引擎。且将非核心流程异步化,整体提高核心功能的性能和稳定性。

构建一个高可用的系统架构&#xff0c;涉及到分库分表、读写分离、使用搜索引擎以及异步处理非核心流程等多个方面。以下是这些策略的详细说明和实施要点&#xff1a; 1. **分库分表&#xff08;Sharding&#xff09;**&#xff1a; - 将数据分布到多个数据库中&#xff0c…...

魔行观察-AI数据分析>>勒泰中心购物中心

摘要 本报告基于 魔行观察 搜集整理的数据&#xff0c;对勒泰中心购物中心的营业状态、商户构成、业态分布以及消费者评价进行了详细分析。 商场概览 勒泰中心是一个正常营业的购物中心&#xff0c;自2013年开业以来&#xff0c;已成为当地居民和游客的重要购物和休闲场所。…...

在线JSON可视化工具--改进

先前发布了JSON格式化可视化在线工具&#xff0c;提供图形化界面显示结构关系功能&#xff0c;并提供JSON快速格式化、JSON压缩、快捷复制、下载导出、对存在语法错误的地方能明确显示&#xff0c;而且还支持全屏&#xff0c;极大扩大视野区域。 在线JSON格式化可视化工具 但…...

设计模型 - 学习笔记

学习参考&#xff1a; https://blog.csdn.net/m0_65346405/article/details/136994128 《系统分析师教程》 《设计模式之禅》 一. 设计模式的5大原则 1. 单一职责原则 一个类应该只有一个变化因子。 就是说&#xff0c;一个类要变化&#xff0c;比如增加功能&#xff0c;那么引…...

【数据结构|C语言版】四大排序(算法)

前言1. 插入排序1.1 直接插入排序1.2 希尔排序 2. 选择排序2.1 选择排序2.2 堆排序 3. 交换排序3.1 冒泡排序冒泡排序的步骤 3.2 快速排序快速排序的步骤 4. 归并排序归并排序的步骤&#xff1a;代码解释&#xff1a;归并排序的性能&#xff1a; 上期回顾: 【数据结构|C语言版】…...

开启IT世界的第一步:高考新生的暑期学习指南

目录 前言 了解IT领域 学习编程语言 实践项目 学习资源 阅读专业书籍 培养良好的学习习惯 结语 最后 - 投票 前言 七月的钟声敲响&#xff0c;各省的高考分数已揭晓&#xff0c;意味着一段紧张而又充满奋斗的旅程画上了句号。然而&#xff0c;高考的结束并不意味…...

六一,乳山五村迎来一群小记者……

6月1日,“儿童友好、生物友好——乳山五村大自然保护植物与艺术体验”活动在上海的乳山五村举行。现场,在上房园林植物研究所专家和青年艺术家的带领下,《少年日报》小记者团60余位小记者和乳山五村等小区少儿朋友观察了原生植物,并参与墙绘活动。当天,上房园林植物研究所…...

网络应用层之(1)DHCPv6协议

网络应用层之(1)DHCPv6协议 Author: Once Day Date: 2024年5月26日 一位热衷于Linux学习和开发的菜鸟&#xff0c;试图谱写一场冒险之旅&#xff0c;也许终点只是一场白日梦… 漫漫长路&#xff0c;有人对你微笑过嘛… 全系列文章可参考专栏: 通信网络技术_Once-Day的博客-C…...

Vue——事件修饰符

文章目录 前言阻止默认事件 prevent阻止事件冒泡 stop 前言 在官方文档中对于事件修饰符有一个很好的说明&#xff0c;本篇文章主要记录验证测试的案例。 官方文档 事件修饰符 阻止默认事件 prevent 在js原生的语言中&#xff0c;可以根据标签本身的事件对象进行阻止默认事件…...

Flutter 中的 FractionalTranslation 小部件:全面指南

Flutter 中的 FractionalTranslation 小部件&#xff1a;全面指南 在 Flutter 的丰富布局库中&#xff0c;FractionalTranslation 是一个允许你将子组件沿着一个轴或两个轴进行部分平移的动画小部件。这种类型的平移通常用于创建滑动效果&#xff0c;如卡片的滑动删除或滑动展…...

快解析动态域名解析,实现外网访问内网数据库

今天跟大家分享一下如何借助快解析动态域名解析&#xff0c;在两种特定网络环境下&#xff0c;实现外网访问内网mysql数据库。 第1种网络环境&#xff1a;路由器分配的是动态公网IP&#xff0c;且有路由器登录管理权限。如何实现外网访问内网mysql数据库&#xff1f; 针对这种…...

代码随想录算法训练营第十四天(py)| 二叉树 | 递归遍历、迭代遍历、统一迭代

1 理论基础 1.1 二叉树的种类 满二叉树 只有度为0和2的节点&#xff0c;且度为0的节点在同一层。 深度为k&#xff0c;有2^k-1个节点 完全二叉树 除了最底层可能没填满&#xff0c;其余每层节点数都达到最大。并且最底层节点全部集中在左边。 二叉搜索树 是一个有数值…...