Hadoop安装 --- 简易安装Hadoop
目录
1、使用xftp工具 在opt目录下创建install和soft文件
2、使用xftp工具 将压缩包上传到install文件
3、编写shell脚本
3.1、创建目录来放shell脚本
3.2、创建autoinsatll.sh文件并修改权限
3.3、编写autoinsatll.sh 文件
刷新资源
运行文件
格式化
启动所有进程
Hadoop安装详细教程
1、使用xftp工具 在opt目录下创建install和soft文件
2、使用xftp工具 将压缩包上传到install文件
查看
[root@hadoop1 ~]# ls /opt/install/
3、编写shell脚本
3.1、创建目录来放shell脚本
[root@hadoop3 opt]# mkdir shellfile
进入shellfile
[root@hadoop3 opt]# cd ./shellfile/
[root@hadoop3 shellfile]# pwd
/opt/shellfile
3.2、创建autoinsatll.sh文件并修改权限
[root@hadoop1 shellfile]# vim autoinsatll.sh
[root@hadoop1 shellfile]# chmod 777 ./autoinsatll.sh
3.3、编写autoinsatll.sh 文件
#! /bin/bash
echo 'auto install hadoop begining....'#global var
hadoop=trueif [ "$hadoop" = true ];thenecho 'hadoop install set true'echo 'setup hadoop 3'tar -zxf /opt/install/hadoop-3.1.3.tar.gz -C /opt/soft/mv /opt/soft/hadoop-3.1.3 /opt/soft/hadoop313sed -i '78a\export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop' /etc/profilesed -i '78a\export HADOOP_LIBEXEC_DIR=$HADOOP_HOME/libexec' /etc/profilesed -i '78a\export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native' /etc/profilesed -i '78a\export HADOOP_INSTALL=$HADOOP_HOME' /etc/profilesed -i '78a\export HADOOP_YARN_HOME=$HADOOP_HOME' /etc/profilesed -i '78a\export HADOOP_HDFS_HOME=$HADOOP_HOME' /etc/profilesed -i '78a\export HADOOP_COMMON_HOME=$HADOOP_HOME' /etc/profilesed -i '78a\export HADOOP_MAPRED_HOME=$HADOOP_HOME' /etc/profilesed -i '78a\export YARN_NODEMANAGER_USER=root' /etc/profilesed -i '78a\export YARN_RESOURCEMANAGER_USER=root' /etc/profilesed -i '78a\export HDFS_ZKFC_USER=root' /etc/profilesed -i '78a\export HDFS_JOURNALNODE_USER=root' /etc/profilesed -i '78a\export HDFS_SECONDARYNAMENODE_USER=root' /etc/profilesed -i '78a\export HDFS_DATANODE_USER=root' /etc/profilesed -i '78a\export HDFS_NAMENODE_USER=root' /etc/profilesed -i '78a\export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/lib' /etc/profilesed -i '78a\export HADOOP_HOME=/opt/soft/hadoop313' /etc/profilesed -i '78a\#HADOOP_HOME' /etc/profile#core-sitesed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <value>*</value>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <name>hadoop.proxyuser.root.groups</name>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <value>*</value>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <name>hadoop.proxyuser.root.hosts</name>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <description>读写队列缓存:128k</description>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <value>131072</value>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <name>io.file.buffer.size</name>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <value>root</value>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <name>hadoop.http.staticuser.user</name>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <description>namenode上本地的hadoop临时文件夹</description>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <value>/opt/soft/hadoop313/data</value>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <name>hadoop.tmp.dir</name>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <value>hdfs://hadoop3:9000</value>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <name>fs.defaultFS</name>' /opt/soft/hadoop313/etc/hadoop/core-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/core-site.xml#hadoop-env.shsed -i '53a\export JAVA_HOME=/opt/soft/jdk180' /opt/soft/hadoop313/etc/hadoop/hadoop-env.sh#hdfs-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <description>关闭权限验证</description>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <value>false</value>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <name>dfs.permissions.enabled</name>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <description>datanode上数据块的物理存储位置目录</description>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <value>/opt/soft/hadoop313/data/dfs/data</value>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <name>dfs.datanode.data.dir</name>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <description>namenode上存储hdfsq名字空间元数据的目录</description>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <value>/opt/soft/hadoop313/data/dfs/name</value>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <name>dfs.namenode.name.dir</name>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <description>hadoop中每一个block文件的备份数量</description>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <value>1</value>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <name>dfs.replication</name>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/hdfs-site.xml#mapred-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <value>1024</value>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <name>mapreduce.reduce.memory.mb</name>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <value>1024</value>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <name>mapreduce.map.memory.mb</name>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <value>hadoop3:19888</value>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <name>mapreduce.jobhistory.webapp.address</name>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <value>hadoop3:10020</value>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <name>mapreduce.jobhistory.address</name>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <value>/opt/soft/hadoop313/etc/hadoop:/opt/soft/hadoop313/share/hadoop/common/lib/*:/opt/soft/hadoop313/share/hadoop/common/*:/opt/soft/hadoop313/share/hadoop/hdfs/*:/opt/soft/hadoop313/share/hadoop/hdfs/lib/*:/opt/soft/hadoop313/share/hadoop/mapreduce/*:/opt/soft/hadoop313/share/hadoop/mapreduce/lib/*:/opt/soft/hadoop313/share/hadoop/yarn/*:/opt/soft/hadoop313/share/hadoop/yarn/lib/*</value>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <name>mapreduce.application.classpath</name>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ </property>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <final>true</final>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <description>job执行框架:local,classic or yarn</description>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <value>yarn</value>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <name>mapreduce.framework.name</name>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xmlsed -i '19a\ <property>' /opt/soft/hadoop313/etc/hadoop/mapred-site.xml#yarn-site.xmlsed -i '17a\ </property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <value>/opt/soft/hadoop313/yarndata/log</value>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <name>yarn.nodemanager.log-dirs</name>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ </property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <value>/opt/soft/hadoop313/yarndata/yarn</value>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <name>yarn.nodemanager.local-dirs</name>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ </property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <value>mapreduce_shuffle</value>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <name>yarn.nodemanager.aux-services</name>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ </property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <value>hadoop3:8042</value>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <name>yarn.nodemanager.webapp.address</name>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ </property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <value>hadoop3:8050</value>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <name>yarn.nodemanager.address</name>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ </property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <value>hadoop3:8040</value>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <name>yarn.nodemanager.localizer.address</name>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ </property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</value>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <name>yarn.resourcemanager.scheduler.class</name>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ </property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <value>20000</value>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <name>yarn.resourcemanager.connect.retry-interval.ms</name>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlsed -i '17a\ <property>' /opt/soft/hadoop313/etc/hadoop/yarn-site.xmlecho 'setup hadoop 3 success!!!'
fi
刷新资源
[root@hadoop3 shellfile]# source /etc/profile
运行文件
[root@hadoop3 shellfile]# ./hadoopautoinstall.sh
格式化
[root@hadoop3 shellfile]# hdfs namenode -format
启动所有进程
[root@hadoop3 shellfile]# start-all.sh
查看启动情况
[root@hadoop3 shellfile]# jps
出来上面六个则OK
相关文章:

Hadoop安装 --- 简易安装Hadoop
目录 1、使用xftp工具 在opt目录下创建install和soft文件 2、使用xftp工具 将压缩包上传到install文件 3、编写shell脚本 3.1、创建目录来放shell脚本 3.2、创建autoinsatll.sh文件并修改权限 3.3、编写autoinsatll.sh 文件 刷新资源 运行文件 格式化 启动所有进程 Ha…...
俞军产品方法论,消化吸收,要点整理
一、总体概括二、产品经理、价值、用户模型、交易模型三、价值、产品和企业的价值生存游戏的常见要点:企业做产品的4方面产出:四、决策五、俞军产品方法论,认知迭代史1)俞军12条产品军规2)产品经理职级的背后影响因素:…...

spring注解的开端(@Component替代bean标签的使用)
目录 一、介绍 1.什么是注解开发? 2.Spring注解的版本 3.基于spring注解的应用 4. Component的细分注解 5.相关注解 二、简单例子讲解 1.类打注解 2.扫描注解放入工厂 3.总工厂取注解调用 4.运行结果 总结: 一、介绍 1.什么是注解开发&…...

Matlab傅里叶谱方法求解一维波动方程
傅里叶谱方法求解基本偏微分方程—一维波动方程 一维波动方程 对于一根两端固定、没有受到任何外力的弦, 若只研究其中的一段, 在不太长的时间 里, 固定端来不及对这段弦产生影响, 则可以认为固定端是不存在的, 弦的长度为无限大。 这种无界 (−∞<x<∞)(-\infty<x&…...
py3中 collections.Counter()函数典型例题
文章目录py3中 collections 的常用STL**Counter()** 函数**defaultdict()** 函数**deque()** 函数**orderedDict()** 函数(缺例题)小结py3中 collections 的常用STL 对于这个工具包非常好用,尤其是其中的 Counter() 函数 使用次数颇为频繁&a…...

Linux部署达梦数据库超详细教程
陈老老老板🦸👨💻本文专栏:国产数据库-达梦数据库👨💻本文简述:本文讲一下达梦数据库的下载与安装教程(Linux版),超级详细。👨💻…...

ctfshow 每周大挑战 极限命令执行
《简单的命令执行题目》 这里感叹一下,g4佬是真好厉害,这次题目十分的难,嗯,对我这种菜鸡来说是这样的,想了一天,最后结束了,也还是没有想明白第五题的解法,我真是fw,到最…...

使用vue3,vite,less,flask,python从零开始学习硅谷外卖(16-40集)
严正声明! 重要的事情说一遍,本文章仅供分享,文章和代码都是开源的,严禁以此牟利,严禁侵犯尚硅谷原作视频的任何权益,我知道学习编程的人各种各样的心思都有,但这不是你对开源社区侵权的理由&am…...
坚持就是胜利
很多朋友,可能坚持了多年的同等学力申硕考试,依然没有通过。如果你感到困惑,感到迷茫,要坚信:坚持就能胜利。有很多人跟你一样,一直坚持在路上,没有停止脚步。 生活没有你想象的那么好ÿ…...
代码中出现转置 pose (c2w,外参矩阵) 或者转置 intrinsic (内参)矩阵的原因
在代码中见到 pose(c2w),intrinsic 矩阵的转置,觉得比较奇怪。 后来想了一下为什么。下面解释一下: 用 c2w 矩阵举例子。理论上,一个 c2w 左乘上 一个相机坐标系下的点 P的坐标,能够得到该点在…...

2023 年腾讯云服务器配置价格表出炉(2核2G/2核4G/4核8G/8核16G、16核32G)
腾讯云轻量应用服务器为轻量级的云服务器,使用门槛低,按套餐形式购买,轻量应用服务器套餐自带的公网带宽较大,4M、6M、7M、10M、14M及20M套餐可选,如果是云服务器CVM这个带宽价格就要贵很多了。 1、轻量应用服务器优惠…...

相机出图画面一半清晰,一半模糊的原因是什么?
1、问题背景:在做项目的过程中,有遇到过几次,出图后画面是一半清晰,一半模糊的现象,再重新对焦也是一样。但换了个镜头后就好了,这应该是镜头的质量问题,但导致镜头出现这种问题的具体原因是什么…...

Rust学习入门--【4】Rust 输出到命令行
Rust 语言中的打印“函数” 学习新的编程语言时,大家都喜欢打印“Hello World”。 在Rust中怎样将字符串打印出来呢? Rust 输出文字的方式主要有两种:println!() 和 print!()。 “函数”差异说明: 这两个"函数"都是向…...
Vector刷写方案—vFlash工具介绍
我是穿拖鞋的汉子,魔都中坚持长期主义的工科男! 今天魔都天气是连阴雨,滴滴答答的下个不停,心情也跟着潮湿起来!老规矩分享一段喜欢的文字,避免成为高知识低文化的工程师: 即使在真正的困境里,也一直提示自己,每次自恋不得超过十分钟! 那些看似无法度过得困境,不是…...
【阶段总结】《非结构化信息分析应用与实践(筹)》
《非结构化信息分析应用与实践(筹)》Part 1.知识储备一、机器学习 1.几种常见的有监督学习算法 2.几种常见的无监督学习算法 3.数据挖掘基础知识 30 问 二、神经网络与深度学习 1.MP神经网络模型(附实例代码讲解) 2.图解LST…...

七大设计原则之迪米特法则应用
目录1 迪米特法则介绍2 迪米特法则应用1 迪米特法则介绍 迪米特原则(Law of Demeter LoD)是指一个对象应该对其他对象保持最少的了解,又叫最少知 道原则(Least Knowledge Principle,LKP),尽量降低类与类之…...
curl命令用法精简整理
目录1.GET请求1.1 形式1:1.2 形式2:2.POST请求2.1 无入参:2.2 form传参(文件):2.3 json入参:2.4 json文件入参:3.请求计时3.1 time命令(Linux):3.…...

Fluent Python 笔记 第 5 章 一等函数
在 Python 中,函数是一等对象。编程语言理论家把“一等对象”定义为满足下述条件的程 序实体: 在运行时创建能赋值给变量或数据结构中的元素 • 能作为参数传给函数能作为函数的返回结果 5.1 把函数视作对象 会用 map。 5.2 高阶函数 接受函数为参数࿰…...

卡尔曼滤波器与DSP实现
卡尔曼滤波器是利用系统状态方程,结合测量结果对系统状态进行进行最优估计的算法。本文介绍它的主要公式,并举例在C6000 DSP上实现。 推荐资料 KalmanFilter.NETUnderstanding Kalman Filters卡尔曼滤波与组合导航原理 “If you can’t explain it sim…...

引入QQ邮箱发送验证码进行安全校验
最近想给自己的项目在注册时加点安全校验,本想着使用短信验证码,奈何囊中羞涩只能退而求次改用QQ邮箱验证注册~ 一.需求分析 场景:用户输入自己的邮箱,点击获取验证码,后台会发送一封邮件到对应邮箱中。 分析&#x…...

UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...

树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法
树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作,无需更改相机配置。但是,一…...

页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...

USB Over IP专用硬件的5个特点
USB over IP技术通过将USB协议数据封装在标准TCP/IP网络数据包中,从根本上改变了USB连接。这允许客户端通过局域网或广域网远程访问和控制物理连接到服务器的USB设备(如专用硬件设备),从而消除了直接物理连接的需要。USB over IP的…...

技术栈RabbitMq的介绍和使用
目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...
LLaMA-Factory 微调 Qwen2-VL 进行人脸情感识别(二)
在上一篇文章中,我们详细介绍了如何使用LLaMA-Factory框架对Qwen2-VL大模型进行微调,以实现人脸情感识别的功能。本篇文章将聚焦于微调完成后,如何调用这个模型进行人脸情感识别的具体代码实现,包括详细的步骤和注释。 模型调用步骤 环境准备:确保安装了必要的Python库。…...

【Post-process】【VBA】ETABS VBA FrameObj.GetNameList and write to EXCEL
ETABS API实战:导出框架元素数据到Excel 在结构工程师的日常工作中,经常需要从ETABS模型中提取框架元素信息进行后续分析。手动复制粘贴不仅耗时,还容易出错。今天我们来用简单的VBA代码实现自动化导出。 🎯 我们要实现什么? 一键点击,就能将ETABS中所有框架元素的基…...
[特殊字符] 手撸 Redis 互斥锁那些坑
📖 手撸 Redis 互斥锁那些坑 最近搞业务遇到高并发下同一个 key 的互斥操作,想实现分布式环境下的互斥锁。于是私下顺手手撸了个基于 Redis 的简单互斥锁,也顺便跟 Redisson 的 RLock 机制对比了下,记录一波,别踩我踩过…...

作为点的对象CenterNet论文阅读
摘要 检测器将图像中的物体表示为轴对齐的边界框。大多数成功的目标检测方法都会枚举几乎完整的潜在目标位置列表,并对每一个位置进行分类。这种做法既浪费又低效,并且需要额外的后处理。在本文中,我们采取了不同的方法。我们将物体建模为单…...

[10-1]I2C通信协议 江协科技学习笔记(17个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17...