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

了解Hadoop

Hadoop了解

Hadoop 是 Apache 基金会开发的一个开源分布式计算平台,主要用于存储和处理大规模数据集。
它能让用户在不了解分布式系统底层细节的情况下,轻松进行分布式程序的开发,将应用程序自动部署到由大量普通机器组成的集群上进行高效运算。下面为你详细介绍其应用场景和作用
hadoop生态系统包含了很多组件,主要的一个生态系统体系:在这里插入图片描述

核心组件介绍

HDFS
Hadoop 分布式文件系统(HDFS): 是hadoop的存储基石,具备高容错性,可以将海量的数据分散存储在多个节点,数据会被分割为多个数据块,每个数据块会有多个副本,分布在不同的节点上,这样即使部分节点出现故障,数据也不会丢失,保证了数据的安全性和可靠性,支持流式访问.

  1. NameNode: 存储文件的元数据,运行在master node节点上,负责命名空间管理和文件访问控制,
  2. DataNode: 在本地文件系统存储文件块数据,以及数据校验和,运行在slave节点上,
  3. Secondary DataNode: 用来监控HDFS状态
    在这里插入图片描述

MapReduce
是一种编程模型,用于计算海量数据,并把计算任务分割成多个在几群上并行计算独立运行的task,MapReduce 是 Hadoop的核心,它会把计算任务移动到离数据最近的地方进行执行,因为移动大量数据是非常耗费资源的。主要的处理过程分为三个步骤:

  1. map阶段: 在这个里,针对输入的数据会被分割为多个小块,每个小块由一个map任务处理,map任务会读取输入的数据然后转为键值对的形式输出,这个过程可以理解为对原始数据进行初步的过滤.
  2. shuffle排序阶段: 这个阶段会对map阶段处理之后的数据进行排序和分组,将相同的键的值归类到一起,
  3. reduce(聚合): 这个阶段每个reduce任务接受一组相同的键值列表,并对这组值执行指定规则的汇总或聚合操作.然后产生新的输出.

YARN
Yarn :是一个资源管理系统,其作用就是把资源管理和任务调度/监控功分割成不同的进程,Yarn 有一个全局的资源管理器叫 ResourceManager,每个 application 都有一个 ApplicationMaster 进程。一个 application 可能是一个单独的 job 或者是 job 的 DAG (有向无环图)。
在 Yarn 内部有两个守护进程:
• ResourceManager :负责给 application 分配资源
• NodeManager :负责监控容器使用资源情况,并把资源使用情况报告给 ResourceManager。这里所说的资源一般是指CPU、内存、磁盘、网络等。
ApplicationMaster 负责从 ResourceManager 申请资源,并与 NodeManager 一起对任务做持续监控工作。

Yarn 具有下面这些特性:
• 多租户:Yarn允许在同样的 Hadoop数据集使用多种访问引擎。这些访问引擎可能是批处理,实时处理,迭代处理等;
• 集群利用率:在资源自动分配的情况下,跟早期的Hadoop 版本相比,Yarn拥有更高的集群利用率;
• 可扩展性:Yarn可以根据实际需求扩展到几千个节点,多个独立的集群可以联结成一个更大的集群;
• 兼容性:Hadoop 1.x 的 MapReduce 应用程序可以不做任何改动运行在 Yarn集群上面。

hadoop的工作方式

hadoop的主从工作方式

在这里插入图片描述
主从的架构:

  • 一个master节点可以和多个slave节点交互
  • master节点管理,维护和监控slave节点,slave是任务处理的机器.
  • master节点是集群的核心
  • master存储元数据,slave存储业务实际数据
  • 通过master向slave节点分发任务
    hadoop的守护进程
    在这里插入图片描述

通过这个图的展示可以看出在hadoop中主要有4个守护进程:

  1. namenode: 它是HDFS运行在Master节点守护进程
  2. datanode: 它是 HDFS 运行在Slave节点守护进程。
  3. resourcemanager: 是yarn运行在master节点的守护进程
  4. NodeManager: 是yarn运行在slave节点的守护进程
    除了这些,可能还会有 secondary NameNode,standby NameNode,Job HistoryServer 等进程

通过上面的架构图可以了解到在这种架构下,对于master节点是没有高可用的,集群会很不稳定面临单点的风险,下面介绍一下再hadoop中实现高可用的方案.
我们知道 NameNode 上存储的是 HDFS 上所有的元数据信息,因此最关键的问题在于 NameNode 挂了一个,备份的要及时顶上,这就意味着我们要把所有的元数据都同步到备份节点。好,接下来我们考虑如何同步呢?每次 HDFS 写入一个文件,都要同步写 NameNode 和其备份节点吗?如果备份节点挂了就会写失败?显然不能这样,只能是异步来同步元数据。如果 NameNode 刚好宕机却没有将元数据异步写入到备份节点呢?那这部分信息岂不是丢失了?这个问题就自然要引入第三方的存储了,在 HA 方案中叫做“共享存储”。每次写文件时,需要将日志同步写入共享存储,这个步骤成功才能认定写文件成功。然后备份节点定期从共享存储同步日志,以便进行主备切换。
Hadoop NameNode HA原理
核心组件介绍:
Namenode主备切换主要是由ZKFailoverController,HealthMonitor和ActiveStandbyElector这个3个组件来协同实现:

  • ZKFailoverController作为Namenode上一个独立的进程启动(在hdfs启动脚本之中的进程为zkfc),启动的时候会创建HealthMonitor 和ActiveStandbyElector 组件,会进行整体协调负责管理和监控namenode的状态并与zookerper进行交互.
  • HealthMonitor:是对本地的namenode进行健康状态检测,检测状态,状态反馈,根据检测结果向zkfc进行汇报.它可以检测多种故障,包括硬件故障、软件故障、网络故障等
  • ActiveStandbyElector: 在zookerper的协调下进行active namenode的选举.每个 Standby NameNode 的 ActiveStandbyElector 会尝试在 ZooKeeper 中创建一个特定的节点,如果创建成功,则该 NameNode 成为新的 Active NameNode;如果创建失败,则表示有其他 NameNode 已经成功竞选为 Active NameNode,该 NameNode 继续保持 Standby 状态。在选举完成后,ActiveStandbyElector 会确保新的 Active NameNode 和其他 Standby NameNode 之间的状态同步,保证整个集群的一致性和稳定性

hadoop在linux下的安装部署

hadoop的运行模式
Hadoop 有三种运行模式,分别是本地(单机)模式、伪分布式模式和完全分布式模式,下面为详细介绍它们的区别;
本地模式
特点:
简单配置:这是 Hadoop 最基础的运行模式,几乎不需要额外配置。它把所有组件都运行在单个 Java 虚拟机中,就像普通的 Java 程序一样。
无分布式特性:此模式下不涉及数据的分布式存储与处理,主要用于开发调试简单的 MapReduce 程序或者进行代码测试。
数据存储:数据一般存于本地文件系统,而非 Hadoop 分布式文件系统(HDFS)
适用场景
适合初学者快速上手 Hadoop,在学习和开发初期用来验证 MapReduce 程序逻辑的正确性。
进行小规模数据的测试和实验。

伪分布式模式
特点:
模拟分布式环境:虽然所有 Hadoop 守护进程(如 NameNode、DataNode、ResourceManager、NodeManager 等)都在一台机器上运行,但它们以独立的 Java 进程形式存在,能够模拟分布式环境的运行机制。
使用 HDFS:数据存储采用 HDFS,可体验 Hadoop 分布式文件系统的功能,如数据的复制、容错等。
配置相对简单:相较于完全分布式模式,伪分布式模式的配置较为简便,通常只需对几个关键配置文件进行修改。
适用场景:
用于开发和测试分布式程序,让开发者在单机上就能模拟分布式环境,进行程序的调试和优化。
学习 Hadoop 各个组件的工作原理和交互方式。
完全分布式模式
特点
多节点集群:由多个物理节点组成集群,每个节点承担不同的角色,如 NameNode、DataNode、ResourceManager、NodeManager 等,各个节点之间通过网络进行通信和协作。
高可靠性和扩展性:可以根据实际需求添加或减少节点,以提高系统的处理能力和存储容量。同时,HDFS 的数据冗余机制和 YARN 的资源管理机制确保了系统的高可靠性。
复杂配置和管理:需要对每个节点进行详细的配置和管理,包括网络配置、节点间的通信、数据同步等,对运维人员的技术要求较高。

未完待续~

相关文章:

了解Hadoop

Hadoop了解 Hadoop 是 Apache 基金会开发的一个开源分布式计算平台,主要用于存储和处理大规模数据集。 它能让用户在不了解分布式系统底层细节的情况下,轻松进行分布式程序的开发,将应用程序自动部署到由大量普通机器组成的集群上进行高效运…...

FPGA:如何提高RTL编码能力?

要提升RTL(寄存器传输级)编码能力,需从硬件设计思维建立、典型电路建模、编码规范掌握、工具链应用和工程实践五个维度系统性训练。以下是具体提升路径: 一、建立硬件设计思维:理解RTL与软件的本质区别 RTL代码最终会…...

高频微服务面试题总结

微服务基础概念 什么是微服务架构? 将单一应用拆分为一组小型服务每个服务运行独立进程,轻量级通信独立开发、部署和扩展特点:松耦合、独立技术栈、独立数据库微服务与单体架构对比 维度单体架构微服务架构开发效率初期快初期慢部署整体部署独立部署扩展性整体扩展细粒度扩展…...

【RAG】Milvus、Pinecone、PgVector向量数据库索引参数优化

Milvus 、PgVector 索引参数优化 IVF类索引关键参数(基于聚类算法) nlist (倒排列表数量): 决定将向量空间划分为多少个聚类中心值越大搜索越精确但耗时越长推荐值: 通常设置为数据量的4√n到n/1000之间例如: 1百万数据量可设nlist1000到4000 nprobe (…...

基金基础知识-指数基金 | 投资理财(4) 【待续】

基金通常是由股票、债券等多种资产组合而成的投资工具​​,核心是分散化,将资金投向一篮子资产(动态),避免单一资产的风险。 按投资标的分类: 基金类型 相当于 特点 适合人群 货币基金 活期钱包&…...

【K8S系列】Kubernetes常用 命令

以下为的 Kubernetes 超全常用命令文档,涵盖集群管理、资源操作、调试排错等核心场景,结合示例与解析, 高效运维 Kubernetes 环境。 一、集群与节点管理 1. 集群信息查看 查看集群基本信息kubectl cluster-info # 显示API Server、DNS等核…...

高性能编程相关

​​​​​​​常见高性能编程技巧: 一,系统级性能优化:从系统架构设计考虑,例如消息队列,模块分成分级,IO读写带宽等 二,算法级性能优化:时间和空间优化 三,代码级性能优…...

使用 NV‑Ingest、Unstructured 和 Elasticsearch 处理非结构化数据

作者:来自 Elastic Ajay Krishnan Gopalan 了解如何使用 NV-Ingest、Unstructured Platform 和 Elasticsearch 为 RAG 应用构建可扩展的非结构化文档数据管道。 Elasticsearch 原生集成了行业领先的生成式 AI 工具和提供商。查看我们的网络研讨会,了解如…...

k8s之statefulset

什么是statefulset(sts) statefulset是用来管理有状态应用的工作负载API对象,也是一种工作负载资源 有状态和无状态 无状态应用:当前应用不会记录状态(网络可能会变、挂载的东西可能会变、顺序可能会变) 有状态应用:需要记录当前状态(网络不变、存储不变、顺序不变) 使…...

在自然语言处理任务中,像 BERT 这样的模型会在输入前自动加上一些特殊token

🌱 1. 什么是 BERT? BERT 是一个自然语言理解模型。你可以把它想象成一个超级聪明的“语言理解机器人”。你把一句话丢进去,它能: 理解这句话的意思;告诉你哪个词是实体(人名、地名)&#xff…...

java学习笔记

Java 方法返回值 Java 是一种强类型语言,方法在定义时必须明确指定返回值的类型。 这确保了类型安全和代码的可预测性. 方法返回值不能缺省。 必须显式声明返回类型. 如果方法没有返回值,需要使用 void 关键字来表示。 void 意味着该方法执行某些操作但不返回任何值。 访问修…...

动态规划--两个数组的dp问题

目录 1 最长公共子序列 2 最长回文子序列 3 不相交的线 4 不同的子序列 5 通配符匹配 6 正则表达式匹配 7 交错字符串 8 两个字符串的最小ASCII删除和 9 最长重复子数组 本文主要讲解两个数组的动态规划问题的几个经典例题,希望看完本文之后能够对大家做这…...

Xcavate 上线 Polkadot |开启 Web3 房地产投资新时代

在传统资产 Tokenization 浪潮中,Xcavate 以房地产为切口迅速崛起。作为 2023 年 OneBlock 冬季波卡黑客松冠军,Xcavate 凭借创新的资产管理与分发机制,在波卡生态中崭露头角。此次主网上线,标志着 Xcavate 正式迈入全球化应用阶段…...

在企业级项目中高效使用 Maven-mvnd

1、引言 1.1 什么是 Maven-mvnd? Maven-mvnd 是 Apache Maven 的一个实验性扩展工具(也称为 mvnd),基于守护进程(daemon)模型构建,目标是显著提升 Maven 构建的速度和效率。它由 Red Hat 推出,通过复用 JVM 进程来减少每次构建时的启动开销。 1.2 为什么企业在构建过…...

[论文阅读]Deeply-Supervised Nets

摘要 我们提出的深度监督网络(DSN)方法在最小化分类误差的同时,使隐藏层的学习过程更加直接和透明。我们尝试通过研究深度网络中的新公式来提升分类性能。我们关注卷积神经网络(CNN)架构中的三个方面:&…...

使用零样本LLM在现实世界环境中推广端到端自动驾驶——论文阅读

《Generalizing End-To-End Autonomous Driving In Real-World Environments Using Zero-Shot LLMs》2024年12月发表,来自纽约stony brook大学、UIC和桑瑞思(数字化医疗科技公司)的论文。 传统的自动驾驶方法采用模块化设计,将任务…...

多视图密集对应学习:细粒度3D分割的自监督革命

原文标题:Multi-view Dense Correspondence Learning (MvDeCor) 引言 在计算机视觉与图形学领域,3D形状分割一直是一个基础且具有挑战性的任务。如何在标注稀缺的情况下,实现对3D模型的细粒度分割?近期,斯坦福大学视觉…...

【论文阅读】——Articulate AnyMesh: Open-Vocabulary 3D Articulated Objects Modeling

文章目录 摘要一、介绍二、相关工作2.1. 铰接对象建模2.2. 部件感知3D生成 三、方法3.1. 概述3.2. 通过VLM助手进行可移动部件分割3.3. 通过几何感知视觉提示的发音估计3.4. 通过随机关节状态进行细化 四、实验4.1. 定量实验发音估计设置: 4.2. 应用程序 五、结论六、思考 摘要…...

Docker Compose 的详细使用总结、常用命令及配置示例

以下是 Docker Compose 的详细使用总结、常用命令及配置示例,帮助您快速掌握这一容器编排工具。 一、Docker Compose 核心概念 定位:用于定义和管理多容器 Docker 应用,通过 YAML 文件配置服务、网络、卷等资源。核心概念: 服务 …...

2025.05.08-得物春招研发岗-第三题

📌 点击直达笔试专栏 👉《大厂笔试突围》 💻 春秋招笔试突围在线OJ 👉 笔试突围OJ 03. 矩阵魔法变换 问题描述 A先生是一位著名的魔法师,他最近发明了一种特殊的矩阵魔法。这种魔法可以同时改变矩阵中特定区域内所有元素的值。 A先生有一个 n m n \times m...

【Spring AI 实战】基于 Docker Model Runner 构建本地化 AI 聊天服务:从配置到函数调用全解析

【Spring AI 实战】基于 Docker Model Runner 构建本地化 AI 聊天服务:从配置到函数调用全解析 前沿:本地化 AI 推理的新范式 随着大语言模型(LLM)应用的普及,本地化部署与灵活扩展成为企业级 AI 开发的核心需求。Do…...

【数据机构】2. 线性表之“顺序表”

- 第 96 篇 - Date: 2025 - 05 - 09 Author: 郑龙浩/仟墨 【数据结构 2】 文章目录 数据结构 - 2 -线性表之“顺序表”1 基本概念2 顺序表(一般为数组)① 基本介绍② 分类 (静态与动态)③ 动态顺序表的实现**test.c文件:****SeqList.h文件:****SeqList.c文件:** 数据结构 - 2 …...

Django ORM: values() 和 annotate() 方法详解

1. values()方法 1.1 基本概念 values()方法用于返回一个包含字典的QuerySet,而不是模型实例。每个字典表示一个对象,键对应于模型字段名称。 1.2 基本用法 # 获取所有书籍的标题和出版日期 from myapp.models import Bookbooks Book.objects.value…...

数据结构篇-二叉树

抽象定义CFG文法具体表示基本操作性质 抽象定义 二叉树是一个抽象的数学概念。它的定义是递归的 一棵二叉树可以是一个外部节点,一棵二叉树可以是内部节点,连接到一对二叉树,分别是它的左子树,和右子树。 这个抽象定义描述了二…...

前端面试每日三题 - Day 29

这是我为准备前端/全栈开发工程师面试整理的第29天每日三题练习: ✅ 题目1:Web Components技术全景解析 核心三要素 Custom Elements(自定义元素) class MyButton extends HTMLElement {constructor() {super();this.attachShado…...

Java设计模式之抽象工厂模式:从入门到精通

一、抽象工厂模式概述 抽象工厂模式(Abstract Factory Pattern)是一种创建型设计模式,它提供了一种创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 1.1 专业定义 抽象工厂模式定义了一个工厂接口,用于创建一系列相关或依赖的对象,客户端通过调用抽象工…...

Rust中记录日志:fast_log

在Rust程序中记录日志,可以使用fast_log。 根据fast_log 的介绍,这是一个性能非常高的日志实现,还支持文件追加模式、压缩、切分与回滚等操作。 而且,这个库记录日志是异步的,即不会因为日志而影响程序的运行。只有当…...

构筑芯片行业的“安全硅甲”

在半导体行业,数据就是生命线。一份芯片设计图纸的泄露,可能让企业数亿研发投入付诸东流;一段核心代码的外传,甚至可能影响国家产业安全。然而,现实情况却是——许多芯片企业的数据防护,仍处于“裸奔”状态…...

C++ Dll创建与调用 查看dll函数 MFC 单对话框应用程序(EXE 工程)改为 DLL 工程

C Dll创建 一、添加 DllMain&#xff08;必要&#xff09; #include <fstream>void Log(const char* msg) {std::ofstream f("C:\\temp\\dll_log.txt", std::ios::app);f << msg << std::endl; }BOOL APIENTRY DllMain(HMODULE hModule, DWORD u…...

使用智能表格做FMEDA

一、优点 使用智能表格替代excel做FMEDA具备以下优势&#xff1a; 减少维护成本&#xff08;数据库关联&#xff0c;修改方便&#xff09;便于持续优化&#xff08;失效率分布&#xff0c;失效率模型可重复使用&#xff09;多人同步编写&#xff08;同时操作&#xff0c;同步…...

电动汽车充换电设施可调能力聚合评估与预测 - 使用说明文档

电动汽车充换电设施可调能力聚合评估与预测 - 使用说明文档 概述 本脚本real_data_model.m基于论文《大规模电动汽车充换电设施可调能力聚合评估与预测》(鲍志远&#xff0c;胡泽春)实现了电动汽车充电设施的负荷预测和可调能力评估。使用混合模型&#xff08;LSTM神经网络线…...

Tomcat 日志体系深度解析:从访问日志配置到错误日志分析的全链路指南

一、Tomcat 核心日志文件架构与核心功能 1. 三大基础日志文件对比&#xff08;权威定义&#xff09; 日志文件数据来源核心功能典型场景catalina.out标准输出 / 错误重定向包含 Tomcat 引擎日志与应用控制台输出&#xff08;System.out/System.err&#xff09;排查 Tomcat 启…...

MSF 生成不同的木马 msfvenom 框架命令

目录 什么是 msfvenom&#xff1f; 一、针对 Windows 的木马生成命令 1. EXE 格式&#xff08;经典可执行文件&#xff09; 2. VBS 脚本&#xff08;Visual Basic Script&#xff09; 3. PowerShell 脚本 4. DLL 文件&#xff08;动态链接库&#xff09; 5. Python 脚本…...

Linux云计算训练营笔记day05(Rocky Linux中的命令:管道操作 |、wc、find、vim)

管道操作 | 作用: 将前面命令的输出&#xff0c;传递给后面命令&#xff0c;作为后面命令的参数 head -3 /etc/passwd | tail -1 取第三行 head -8 /etc/passwd | tail -3 | cat -n 取6 7 8行 ifconfig | head -2 | tail -1 只查看IP地址 ifconfig | grep 192 过滤192的ip…...

【相机标定】OpenCV 相机标定中的重投影误差与角点三维坐标计算详解

摘要&#xff1a; 本文将从以下几个方面展开&#xff0c;结合典型代码深入解析 OpenCV 中的相机标定过程&#xff0c;重点阐述重投影误差的计算方法与实际意义&#xff0c;并通过一个 calcBoardCornerPositions() 函数详细讲解棋盘格角点三维坐标的构建逻辑。 在计算机视觉领域…...

传统销售VS智能销售:AI如何重构商业变现逻辑

如今最会赚钱的企业早就不靠堆人力了&#xff0c;他们都在悄悄用AI做商业变现。当普通销售还在手动记录客户信息时&#xff0c;AI销售系统已经能实时追踪客户在商品页的停留时长&#xff0c;甚至精确到秒。 传统客服人员还在机械地复制粘贴标准话术&#xff0c;AI销售却已经能根…...

从设计到开发,原型标注图全流程标准化

一、原型标注图是什么&#xff1f; 原型标注图&#xff08;Annotated Prototype&#xff09;是设计原型&#xff08;Prototype&#xff09;的详细说明书&#xff0c;通过图文结合的方式&#xff0c;将设计稿中的视觉样式、交互逻辑、适配规则等技术细节转化为开发可理解的标准…...

Mac QT水平布局和垂直布局

首先上代码 #include "mainwindow.h" #include "ui_mainwindow.h" #include <QPushButton> #include<QVBoxLayout>//垂直布局 #include<QHBoxLayout>//水平布局头文件 MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), …...

部署Superset BI(四)连接sql server数据库

sqlserver没有出现在Superset的连接可选菜单上&#xff0c;这一点让我奇怪。既然没有那就按着HANA的配置方式&#xff0c;照猫画虎。更奇怪的是安装好还不能出现&#xff0c;难道superset和微软有仇&#xff1f; --修改配置文件 rootNocobase:/usr/superset/superset# cd docke…...

Python爬虫(22)Python爬虫进阶:Scrapy框架动态页面爬取与高效数据管道设计

目录 一、背景&#xff1a;Scrapy在现代爬虫中的核心价值二、Scrapy项目快速搭建1. 环境准备与项目初始化2. 项目结构解析 三、动态页面处理&#xff1a;集成Splash与中间件1. 配置Splash渲染服务&#xff08;Docker部署&#xff09;2. 修改settings.py启用中间件3. 在Spider中…...

全球实物文件粉碎服务市场洞察:合规驱动下的安全经济与绿色转型

一、引言&#xff1a;从纸质堆叠到数据安全的“最后一公里” 在数字化转型浪潮中&#xff0c;全球企业每年仍产生超过1.2万亿页纸质文件&#xff0c;其中包含大量机密数据、客户隐私及商业敏感信息。据QYResearch预测&#xff0c;2031年全球实物文件粉碎服务市场规模将达290.4…...

使用Python 打造多格式文件预览工具 — 图、PDF、Word、Excel 一站式查看

在日常办公或文件管理场景中&#xff0c;我们经常面临这样的问题&#xff1a;在一个文件夹中短时间内产生了大量不同类型的文件&#xff08;如图片、PDF、Word、Excel&#xff09;&#xff0c;我们需要快速浏览和筛选这些文件的内容&#xff0c;却不希望一个个打开它们。有没有…...

Microsoft 365 Copilot:为Teams在线会议带来多语言语音交流新体验

随着AI技术的飞速发展&#xff0c;Microsoft 365 Copilot将大型语言模型&#xff08;LLM&#xff09;与业务数据深度融合&#xff0c;为用户带来了前所未有的办公体验。在Teams在线会议中&#xff0c;Copilot不仅能够作为智能助手提升会议效率&#xff0c;还能通过实时辅助同声…...

c++:双向链表容器(std::list)

目录 &#x1f9f1; 一、什么是 std::list&#xff1f; ⚙️ 二、底层结构图解 &#x1f9ea; 三、list 的常见操作 &#x1f4e6; 四、完整示例代码 &#x1f4cc; 五、特点总结对比 &#x1f6e0; 六、特殊函数 &#x1f4da; 七、list 迭代器操作 ⚠️ 八、使用场景…...

jenkins 启动报错

java.lang.UnsatisfiedLinkError: /opt/application/jdk-17.0.11/lib/libfontmanager.so: libfreetype.so.6: cannot open shared object file: No such file or directory。 解决方案&#xff1a; yum install freetype-devel 安装完成之后重启jenkins。...

输入顶点坐标输出立方体长宽高的神经网络

写一个神经网络&#xff0c;我输入立方体投影线段的三视图坐标&#xff0c;输出分类和长宽高 import torch from torch import nn import torch.nn.functional as F# 假设每个视图有8个顶点&#xff0c;每个顶点有2个坐标值&#xff0c;因此每种视图有16个输入特征 input_dim…...

Layui表格行点击事件监听

​ 在 Layui 中&#xff0c;如果想监听表格行的点击事件&#xff0c;可以通过以下步骤实现&#xff1a; 初始化表格&#xff1a;首先确保你已经使用 Layui 的 table.render 方法成功渲染了你的表格。绑定行点击事件&#xff1a;Layui 并没有直接提供针对表格行点击的事件监听器…...

2025数维杯数学建模竞赛B题完整参考论文(共38页)(含模型、代码、数据)

2025数维杯数学建模竞赛B题完整参考论文 目录 摘要 一、问题重述 二、问题分析 三、模型假设 四、定义与符号说明 五、 模型建立与求解 5.1问题1 5.1.1问题1思路分析 5.1.2问题1模型建立 5.1.3问题1求解结果 5.2问题2 5.2.1问题2思路分析 5.2.2问题2…...

TCP套接字通信核心要点

TCP套接字通信核心要点 通信模型架构 客户端-服务端模型 CS架构&#xff1a;客户端发起请求&#xff0c;服务端响应和处理请求双向通道&#xff1a;建立连接后实现全双工通信 服务端搭建流程 核心步骤 创建套接字 int server socket(AF_INET, SOCK_STREAM, 0); 参数说明&am…...

Android屏蔽通话功能和短信功能

需求开发中&#xff0c;有个要求屏蔽电话功能和短信功能&#xff0c;禁止应用打电话或短信&#xff0c;禁止api开发出的应用打电话或短信。这个约束怎么做呢&#xff1f; framework/base/core/res/res/values/config.xml.....<!-- Flag indicating whether the current devi…...