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

YARN WebUI 服务

一、WebUI 使用

与HDFS一样,YARN也提供了一个WebUI服务,可以使用YARN Web用户界面监视群集队列应用程序服务流活动和节点信息。还可以查看集群详细配置信息,检查各种应用程序和服务的日志

1.1 首页

浏览器输入http://node2.itcast.cn:8088/访问YARN WebUI服务,页面打开后,以列表形式展示已经运行完成的各种应用程序,如MapReduce应用、Spark应用、Flink应用等,与点击页面左侧Application栏目红线框Applications链接显示的内容一致。

1.2 应用程序分析

当点击任意一个应用程序时,会打开一个新页面,并展示这个应用程序的运行信息。以MR应用为例,如果应用程序正在运行,打开的页面如图10-1-2所示;如果应用程序已经运行完成,打开的页面如下图所示。

  • 正在运行的MR应用程序

  • 运行完成的MR应用程序

二、HistoryServer 服务

YARN中提供了一个叫做JobHistoryServer的守护进程,它属于YARN集群的一项系统服务,仅存储已经运行完成的MapReduce应用程序的作业历史信息,并不会存储其他类型(如Spark、Flink等)应用程序的作业历史信息。

  • 当启用JobHistoryServer服务时,仍需要开启日志聚合功能,否则每个Container的运行日志是存储在NodeManager节点本地,查看日志时需要访问各个NodeManager节点,不利于统一管理和分析。
  • 当开启日志聚合功能后AM会自动收集每个Container的日志,并在应用程序完成后将这些日志移动到文件系统,例如HDFS。然后通过JHS的WebUI服务来提供用户使用和应用恢复。

2.1 启用 JHS 服务

在【mapred-site.xml】文件中配置指定JobHistoryServer服务地址和端口号,具体操作如下。

  • 编辑文件:

[root@node1 ~]# vim /export/server/hadoop/etc/hadoop/mapred-site.xml

  • 添加属性配置:

<property>

<name>mapreduce.jobhistory.address</name>

<value>node1.itcast.cn:10020</value>

</property>

<property>

<name>mapreduce.jobhistory.webapp.address</name>

<value>node1.itcast.cn:19888</value>

</property>

<property>

<name>mapreduce.jobhistory.intermediate-done-dir</name>

<value>/mr-history/intermediate</value>

</property>

<property>

<name>mapreduce.jobhistory.done-dir</name>

<value>/mr-history/done</value>

</property>

  • 同步mapred-site.xml文件到集群其他机器,命令如下:

[root@node1 ~]# cd /export/server/hadoop/etc/hadoop

[root@node1 hadoop]# scp -r mapred-site.xml root@node2.itcast.cn:$PWD

[root@node1 hadoop]# scp -r mapred-site.xml root@node3.itcast.cn:$PWD

2.2 启用日志聚合

首先配置运行在YARN上应用的日志聚集功能,当应用运行完成,将日志相关信息上传至HDFS文件系统,编辑文件【yarn-site.xml】和添加属性配置。

  • 编辑文件:

[root@node1 ~]# vim /export/server/hadoop/etc/hadoop/yarn-site.xml

  • 添加属性配置:

<property>

<name>yarn.log-aggregation-enable</name>

<value>true</value>

</property>

<property>

<name>yarn.nodemanager.remote-app-log-dir</name>

<value>/app-logs</value>

</property>

<property>

<name>yarn.log.server.url</name>

<value>http://node1.itcast.cn:19888/jobhistory/logs</value>

</property>

  • 同步yarn-site.xml文件到集群其他机器,命令如下:

[root@node1 ~]# cd /export/server/hadoop/etc/hadoop

[root@node1 hadoop]# scp -r yarn-site.xml root@node2.itcast.cn:$PWD

[root@node1 hadoop]# scp -r yarn-site.xml root@node3.itcast.cn:$PWD

2.3 启动 JHS 服务

在上述配置中指定的JHS服务位于【node1.itcast.cn】节点上,在【node1.itcast.cn】节点中启动JobHistoryServer服务。

  • 启动命令如下:

[root@node1 ~]# mr-jobhistory-daemon.sh start historyserver

  • 或者如下命令:

[root@node1 ~]# mapred --daemon start historyserver

  • 浏览器查看:http://node1.itcast.cn:19888/jobhistory

2.4 JHS 管理 MR 应用

当提交运行MapReduce程序在YARN上运行完成以后,将应用运行日志数据上传到HDFS上,此时JobHistoryServer服务可以从HDFS上读取运行信息,在WebUI进行展示,具体流程如下。

2.4.1 提交MR应用程序

使用yarn jar提交运行官方自带词频统计WordCount程序到YARN上运行,命令如下:

[root@node1 ~]# yarn jar \

/export/server/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.4.jar \

wordcount \

/datas/input.data /datas/output

运行MR程序显示日志信息:

2021-02-25 19:13:43,059 INFO client.ConfiguredRMFailoverProxyProvider: Failing over to rm2

2021-02-25 19:13:43,278 INFO mapreduce.JobResourceUploader: Disabling Erasure Coding for path: /tmp/hadoop-yarn/staging/root/.staging/job_1614243659295_0002

2021-02-25 19:13:43,518 INFO input.FileInputFormat: Total input files to process : 1

2021-02-25 19:13:43,619 INFO mapreduce.JobSubmitter: number of splits:1

2021-02-25 19:13:43,816 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1614243659295_0002

2021-02-25 19:13:43,818 INFO mapreduce.JobSubmitter: Executing with tokens: []

2021-02-25 19:13:44,007 INFO conf.Configuration: resource-types.xml not found

2021-02-25 19:13:44,008 INFO resource.ResourceUtils: Unable to find 'resource-types.xml'.

2021-02-25 19:13:44,077 INFO impl.YarnClientImpl: Submitted application application_1614243659295_0002

2021-02-25 19:13:44,136 INFO mapreduce.Job: The url to track the job: http://node3.itcast.cn:8088/proxy/application_1614243659295_0002/

2021-02-25 19:13:44,137 INFO mapreduce.Job: Running job: job_1614243659295_0002

2021-02-25 19:13:51,321 INFO mapreduce.Job: Job job_1614243659295_0002 running in uber mode : false

2021-02-25 19:13:51,322 INFO mapreduce.Job:  map 0% reduce 0%

2021-02-25 19:13:57,474 INFO mapreduce.Job:  map 100% reduce 0%

2021-02-25 19:14:02,544 INFO mapreduce.Job:  map 100% reduce 100%

2021-02-25 19:14:03,564 INFO mapreduce.Job: Job job_1614243659295_0002 completed successfully

2021-02-25 19:14:03,687 INFO mapreduce.Job: Counters: 53

        File System Counters

                FILE: Number of bytes read=65

                FILE: Number of bytes written=446779

                FILE: Number of read operations=0

                FILE: Number of large read operations=0

                FILE: Number of write operations=0

                HDFS: Number of bytes read=205

                HDFS: Number of bytes written=39

                HDFS: Number of read operations=8

                HDFS: Number of large read operations=0

                HDFS: Number of write operations=2

        Job Counters

                Launched map tasks=1

                Launched reduce tasks=1

                Data-local map tasks=1

                Total time spent by all maps in occupied slots (ms)=3439

                Total time spent by all reduces in occupied slots (ms)=3085

                Total time spent by all map tasks (ms)=3439

                Total time spent by all reduce tasks (ms)=3085

                Total vcore-milliseconds taken by all map tasks=3439

                Total vcore-milliseconds taken by all reduce tasks=3085

                Total megabyte-milliseconds taken by all map tasks=3521536

                Total megabyte-milliseconds taken by all reduce tasks=3159040

        Map-Reduce Framework

                Map input records=3

                Map output records=16

                Map output bytes=160

                Map output materialized bytes=65

                Input split bytes=109

                Combine input records=16

                Combine output records=5

                Reduce input groups=5

                Reduce shuffle bytes=65

                Reduce input records=5

                Reduce output records=5

                Spilled Records=10

                Shuffled Maps =1

                Failed Shuffles=0

                Merged Map outputs=1

                GC time elapsed (ms)=100

                CPU time spent (ms)=2170

                Physical memory (bytes) snapshot=506044416

                Virtual memory (bytes) snapshot=5578981376

                Total committed heap usage (bytes)=360185856

                Peak Map Physical memory (bytes)=280317952

                Peak Map Virtual memory (bytes)=2785366016

                Peak Reduce Physical memory (bytes)=225726464

                Peak Reduce Virtual memory (bytes)=2793615360

        Shuffle Errors

                BAD_ID=0

                CONNECTION=0

                IO_ERROR=0

                WRONG_LENGTH=0

                WRONG_MAP=0

                WRONG_REDUCE=0

        File Input Format Counters

                Bytes Read=96

        File Output Format Counters

                Bytes Written=39

2.4.2 MR运行历史信息

MR应用程序在运行时,是通过AM(MRAppMaster类)将日志写到HDFS中,会生成.jhist.summary_conf.xml文件。其中.jhist文件是MR程序的计数信息,.summary文件是作业的摘要信息,_conf.xml文件是MR程序的配置信息。

  • MR应用程序启动时的资源信息

MR应用程序启动时,会把作业信息存储到${yarn.app.mapreduce.am.staging-dir}/${user}/.staging/${job_id}目录下。

yarn.app.mapreduce.am.staging-dir:/tmp/hadoop-yarn/staging(默认)

  • MR应用程序运行完成时生成的信息

MR应用程序运行完成后,作业信息会被临时移动到${mapreduce.jobhistory.intermediate-done-dir}/${user}目录下。

mapreduce.jobhistory.intermediate-done-dir:/mr-history/intermediate(配置)

  • MR应用程序最终的作业信息

等待${mapreduce.jobhistory.move.interval-ms}配置项的值(默认180000毫秒=3分钟)后,会把${mapreduce.jobhistory.intermediate-done-dir}/${user}下的作业数据移动到${mapreduce.jobhistory.done-dir}/${year}/${month}/${day}/${serialPart}目录下。此时.summary文件会被删除,因为.jhist文件提供了更详细的作业历史信息。

JHS服务中的作业历史信息不是永久存储的,在默认情况下,作业历史清理程序默认按照86400000毫秒(一天)的频率去检查要删除的文件,只有在文件早于mapreduce.jobhistory.max-age-ms(一天)时才进行删除。JHS的历史文件的移动和删除操作由HistoryFileManager类完成。

mapreduce.jobhistory.intermediate-done-dir:/mr-history/intermediate(配置)

mapreduce.jobhistory.intermediate-done-dir:/mr-history/done(配置)

mapreduce.jobhistory.cleaner.enable: true(默认)

mapreduce.jobhistory.cleaner.interval-ms: 86400000(1天)

mapreduce.jobhistory.max-age-ms: 86400000(1天)

 

2.4.3 JHS 运行流程

  • 客户端提交MR应用程序到RM;
  • /tmp/logs/<user>/logs/application_timestamp_xxxx中创建应用程序文件夹;
  • MR作业在群集上的YARN中运行;
  • MR作业完成,在提交作业的作业客户上报告作业计数器;
  • 将计数器信息(.jhist文件)和job_conf.xml文件写入/user/history/done_intermediate/<user>/job_timestamp_xxxx
  • 然后将.jist文件和job_conf.xml从/user/history/done_intermediate/<user>/移动到/user/history/done目录下;
  • 来自每个NM的Container日志汇总到/tmp/logs/<用户ID>/logs/application_timestamp_xxxx;

2.5 JHS WebUI

JobHistoryServer服务WebUI界面相关说明:

2.5.1 首页

浏览器输入:http://node1.itcast.cn:19888 访问JHS服务,页面打开后,以列表形式展示已经运行完成的MR应用程序,与点击页面左侧Application栏目红线框jobs链接显示的内容一致。

2.5.2 JHS 构建说明

浏览器输入 http://node1.itcast.cn:19888/jobhistory/about 地址或者在点击页面左侧Application栏目下红线框about链接后会展示JHS服务的构建版本信息和启动时间。

2.5.3 MR应用程序查看

在JHS作业列表点击任意一个作业:

作业信息查看:

2.5.4 JHS 配置

浏览器输入 http://node1.itcast.cn:19888/conf  或点击页面左侧Tools栏目中的红线框configuration链接会打开JHS的所需配置页面,在配置页面中,主要有集群自定义配置(core-site.xml、hdfs-site.xml、yarn-site.xml和mapred-site.xml)和集群默认配置(core-default.xml、hdfs-default.xml、yarn-default.xml和mapred-default.xml)两种。配置页面中的配置项较多,截图为部分展示。

2.5.5 JHS 本地日志

浏览器输入 http://node1.itcast.cn:19888/logs/  地址或点击页面左侧Tools栏目中的红线框local logs链接会打开JHS服务的所在节点的log文件列表页面。​​​​​​​

2.5.6 JHS 堆栈信息

浏览日输入 http://node1.itcast.cn:19888/stacks  地址或点击页面左侧Tools栏目中的红线框Server stacks链接会打开JHS服务的堆栈转储信息。stacks功能会统计JHS服务的后台线程数、每个线程的运行状态和详情。这些线程有MoveIntermediateToDone线程、JHS的10020 RPC线程、JHS的10033 Admin接口线程、HDFS的StatisticsDataReferenceCleaner线程、JHS服务度量系统的计时器线程、DN的Socket输入流缓存线程和JvmPauseMonitor线程等。

三、TimelineServer 服务

由于Job History Server仅对MapReduce应用程序提供历史信息支持其他应用程序的历史信息需要分别提供单独的HistoryServer才能查询和检索。例如Spark的Application需要通过Spark自己提供的org.apache.spark.deploy.history.HistoryServer来解决应用历史信息。

为了解决这个问题,YARN新增了Timeline Server组件,以通用方式存储和检索应用程序当前和历史信息

到目前,有V1、V1.5和V2共三个版本,V1仅限于写入器/读取器和存储的单个实例,无法很好地扩展到小型群集之外;V2还处于alpha状态,所以在本章以V1.5进行讲解。

版本

说明

V1

基于LevelDB实现。

V1.5

在V1的基础上改进了扩展性。

V2

1.使用更具扩展性的分布式写入器体系结构和可扩展的后端存储。

2.将数据的收集(写入)与数据的提供(读取)分开。它使用分布式收集器,每个YARN应用程序实质上是一个收集器。读取器是专用于通过REST API服务查询的单独实例。

3.使用HBase作为主要的后备存储,因为Apache HBase可以很好地扩展到较大的大小,同时保持良好的读写响应时间。

4.支持在流级别汇总指标。

官方文档:

Apache Hadoop 3.1.4 – The YARN Timeline Server

Apache Hadoop 3.1.4 – The YARN Timeline Service v.2

YARN Timeline Service v.2 服务架构图如下:

3.1 启用 Timeline 服务

在【yarn-site.xml】配置文件中添加如下属性,启动Timeline Server服务功能:

<property>

<name>yarn.timeline-service.enabled</name>

<value>true</value>

</property>

<property>

<name>yarn.timeline-service.hostname</name>

<value>node2.itcast.cn</value>

<description>设置YARN Timeline服务地址</description>

</property>

<property>

<name>yarn.timeline-service.address</name>

<value>node2.itcast.cn:10200</value>

<description>设置YARN Timeline服务启动RPC服务器的地址,默认端口10200</description>

</property>

<property>

<name>yarn.timeline-service.webapp.address</name>

<value>node2.itcast.cn:8188</value>

<description>设置YARN Timeline服务WebUI地址</description>

</property>

<property>

<name>yarn.resourcemanager.system-metrics-publisher.enabled</name>

<value>true</value>

<description>设置RM是否发布信息到Timeline服务器</description>

</property>

<property>

<name>yarn.timeline-service.generic-application-history.enabled</name>

<value>true</value>

<description>设置是否Timelinehistory-servic中获取常规信息,如果为否,则是通过RM获取</description>

</property>

同步yarn-site.xml文件到集群其他机器,命令如下:

[root@node1 ~]# cd /export/server/hadoop/etc/hadoop

[root@node1 hadoop]# scp -r yarn-site.xml root@node2.itcast.cn:$PWD

[root@node1 hadoop]# scp -r yarn-site.xml root@node3.itcast.cn:$PWD

重启YARN服务,命令如下所示:

[root@node2 ~]# stop-yarn.sh

[root@node2 ~]# start-yarn.sh

​​​​​​​3.2 启动 Timeline 服务

在上述配置中指定的Timeline服务位于【node2.itcast.cn】节点上,需要在【node2.itcast.cn】节点的shell客户端中启动,如果在非【node2.itcast.cn】节点上启动时会报错。

启动命令如下:

[root@node2 ~]# yarn --daemon start timelineserver

在浏览器中输入:http://node2.itcast.cn:8188/applicationhistory

相关文章:

YARN WebUI 服务

一、WebUI 使用 与HDFS一样&#xff0c;YARN也提供了一个WebUI服务&#xff0c;可以使用YARN Web用户界面监视群集、队列、应用程序、服务、流活动和节点信息。还可以查看集群详细配置的信息&#xff0c;检查各种应用程序和服务的日志。 1.1 首页 浏览器输入http://node2.itc…...

【Unity3D】利用IJob、Burst优化处理切割物体

参考文章&#xff1a; 【Unity】切割网格 【Unity3D】ECS入门学习&#xff08;一&#xff09;导入及基础学习_unity ecs教程-CSDN博客 【Unity3D】ECS入门学习&#xff08;十二&#xff09;IJob、IJobFor、IJobParallelFor_unity ijobparallelfor-CSDN博客 工程资源地址&…...

【大前端】Vue3 工程化项目使用详解

目录 一、前言 二、前置准备 2.1 环境准备 2.1.1 create-vue功能 2.1.2 nodejs环境 2.1.3 配置nodejs的环境变量 2.1.4 更换安装包的源 三、工程化项目创建与启动过程 3.1 创建工程化项目 3.2 项目初始化 3.3 项目启动 3.4 核心文件说明 四、VUE两种不同的API风格 …...

基于文件系统分布式锁原理

分布式锁&#xff1a;在一个公共的存储服务上打上一个标记&#xff0c;如Redis的setnx命令&#xff0c;是先到先得方式获得锁&#xff0c;ZooKeeper有点像下面的demo,比较大小的方式判决谁获得锁。 package com.ldj.mybatisflex.demo;import java.util.*; import java.util.co…...

简历整理YH

一&#xff0c;订单中心 1&#xff0c;调拨单 融通(Rocketmq)-订单中心&#xff1a;ECC_BMS123(已出单)&#xff0c;125(分配),127(发货),129(收货) 通过RocketMq接入多场景订单数据 2&#xff0c;销售单 sap&#xff08;FTP&#xff09;-订单中心&#xff0c;下发1002,1003,…...

Kotlin 协程基础三 —— 结构化并发(二)

Kotlin 协程基础系列&#xff1a; Kotlin 协程基础一 —— 总体知识概述 Kotlin 协程基础二 —— 结构化并发&#xff08;一&#xff09; Kotlin 协程基础三 —— 结构化并发&#xff08;二&#xff09; Kotlin 协程基础四 —— CoroutineScope 与 CoroutineContext Kotlin 协程…...

微信小程序实现长按录音,点击播放等功能,CSS实现语音录制动画效果

有一个需求需要在微信小程序上实现一个长按时进行语音录制&#xff0c;录制时间最大为60秒&#xff0c;录制完成后&#xff0c;可点击播放&#xff0c;播放时再次点击停止播放&#xff0c;可以反复录制&#xff0c;新录制的语音把之前的语音覆盖掉&#xff0c;也可以主动长按删…...

校园跑腿小程序---轮播图,导航栏开发

hello hello~ &#xff0c;这里是 code袁~&#x1f496;&#x1f496; &#xff0c;欢迎大家点赞&#x1f973;&#x1f973;关注&#x1f4a5;&#x1f4a5;收藏&#x1f339;&#x1f339;&#x1f339; &#x1f981;作者简介&#xff1a;一名喜欢分享和记录学习的在校大学生…...

详细全面讲解C++中重载、隐藏、覆盖的区别

文章目录 总结1、重载示例代码特点1. 模板函数和非模板函数重载2. 重载示例与调用规则示例代码调用规则解释3. 特殊情况与注意事项二义性问题 函数特化与重载的交互 2. 函数隐藏&#xff08;Function Hiding&#xff09;概念示例代码特点 3. 函数覆盖&#xff08;重写&#xff…...

一文读懂单片机的串口

目录 串口通信的基本概念 串口通信的关键参数 单片机串口的硬件连接 单片机串口的工作原理 数据发送过程 数据接收过程 单片机串口的编程实现 以51单片机为例 硬件连接 初始化串口 发送数据 接收数据 串口中断服务函数 代码示例 单片机串口的应用实例 单片机与…...

HTML5 网站模板

HTML5 网站模板 参考 HTML5 Website Templates...

mybatis分页插件:PageHelper、mybatis-plus-jsqlparser(解决SQL_SERVER2005连接分页查询OFFSET问题)

文章目录 引言I PageHelper坐标II mybatis-plus-jsqlparser坐标Spring Boot 添加分页插件自定义 Mapper 方法中使用分页注意事项解决SQL_SERVER2005连接分页查询OFFSET问题知识扩展MyBatis-Plus 框架结构mybatis-plus-jsqlparser的 Page 类引言 PageHelper import com.github.p…...

uniapp中rpx和upx的区别

在 UniApp 中&#xff0c;rpx 和 upx 是两种不同的单位&#xff0c;它们的主要区别在于适用的场景和计算方式。 ### rpx&#xff08;Responsive Pixel&#xff09; - **适用场景**&#xff1a;rpx 是一种响应式单位&#xff0c;主要用于小程序和移动端的布局。 - **计算方式**…...

什么是卷积网络中的平移不变性?平移shft在数据增强中的意义

今天来介绍一下数据增强中的平移shft操作和卷积网络中的平移不变性。 1、什么是平移 Shift 平移是指在数据增强&#xff08;data augmentation&#xff09;过程中&#xff0c;通过对输入图像或目标进行位置偏移&#xff08;平移&#xff09;&#xff0c;让目标在图像中呈现出…...

java.net.SocketException: Connection reset 异常原因分析和解决方法

导致此异常的原因&#xff0c;总结下来有三种情况&#xff1a; 一、服务器端偶尔出现了异常&#xff0c;导致连接关闭 解决方法&#xff1a; 采用出错重试机制 二、 服务器端和客户端使用的连接方式不一致 解决方法&#xff1a; 服务器端和客户端使用相同的连接方式&#xff…...

Maven 仓库的分类

Maven 是一个广泛使用的项目构建和依赖管理工具&#xff0c;在 Java 开发生态中占据重要地位。作为 Maven 的核心概念之一&#xff0c;仓库&#xff08;Repository&#xff09;扮演着至关重要的角色&#xff0c;用于存储项目的依赖、插件以及构建所需的各种资源。 了解 Maven 仓…...

隧道网络:为数据传输开辟安全通道

什么是隧道网络&#xff1f; 想象一下&#xff0c;你正在一个陌生的城市旅行&#xff0c;并且想要访问家里的电脑。但是&#xff0c;直接连接是不可能的&#xff0c;因为家庭网络通常受到防火墙或路由器的保护&#xff0c;不允许外部直接访问。这时候&#xff0c;隧道网络&…...

CentOS 7 下 Nginx 的详细安装与配置

1、安装方式 1.1、通过编译方式安装 下载Nginx1.16.1的安装包 https://nginx.org/download/nginx-1.16.1.tar.gz 下载后上传至/home目录下。 1.2、通过yum方式安装 这种方式安装更简单。 2、通过编译源码包安装Nginx 2.1、安装必要依赖 sudo yum -y install gcc gcc-c sudo…...

JAVA 使用apache poi实现EXCEL文件的输出;apache poi实现标题行的第一个字符为红色;EXCEL设置某几个字符为别的颜色

设置输出文件的列宽&#xff0c;防止文件过于丑陋 Sheet sheet workbook.createSheet(FileConstants.ERROR_FILE_SHEET_NAME); sheet.setColumnWidth(0, 40 * 256); sheet.setColumnWidth(1, 20 * 256); sheet.setColumnWidth(2, 20 * 256); sheet.setColumnWidth(3, 20 * 25…...

通过vba实现在PPT中添加计时器功能

目录 一、前言 二、具体实现步骤 1、准备 2、开启宏、打开开发工具 3、添加计时器显示控件 3.1、开启母版 3.2、插入计时器控件 4、vba代码实现 4.1、添加模块 4.2、添加代码 4.3、保存为pptm 5、效果展示 一、前言 要求/目标:在PPT中每一页上面增加一个计时器功能…...

领导说我年终奖1.5万是全公司最高,让我别到处说,结果昨天发工资才知道:私下问了其他人,都比我多一倍,下个月我直接离职走人!

有个哥们说&#xff0c;领导拍着他肩膀跟他说&#xff1a;"你今年年终奖1.5万&#xff0c;全公司最高的&#xff0c;别到处说啊&#xff0c;影响不好。"哥们当时还挺感动&#xff0c;觉得自己被认可了&#xff0c;干了一年值了。结果昨天发工资&#xff0c;他私下一打…...

Wan2.2-I2V-A14B保姆级教程:从云服务器选购(CPU/内存/磁盘)到镜像运行全链路

Wan2.2-I2V-A14B保姆级教程&#xff1a;从云服务器选购到镜像运行全链路 1. 前言&#xff1a;为什么选择私有部署 在当今视频内容需求爆炸式增长的时代&#xff0c;能够快速生成高质量视频内容的能力变得尤为重要。Wan2.2-I2V-A14B作为一款先进的文生视频模型&#xff0c;可以…...

长尾关键词SEO优化费用如何计算_企业自营SEO关键词优化成本是多少

长尾关键词SEO优化费用如何计算_企业自营SEO关键词优化成本是多少 在当今数字化时代&#xff0c;SEO&#xff08;搜索引擎优化&#xff09;已经成为企业提升网站流量、增加品牌曝光度的重要手段。其中&#xff0c;长尾关键词SEO优化因其较低的竞争度和高转化率&#xff0c;备受…...

intv_ai_mk11开源镜像深度解析:为何选择Llama架构+7B规模+Q4量化黄金组合

intv_ai_mk11开源镜像深度解析&#xff1a;为何选择Llama架构7B规模Q4量化黄金组合 1. 为什么选择Llama架构7B规模Q4量化组合 在构建AI对话机器人时&#xff0c;模型架构、参数规模和量化方式的选择直接影响最终效果和部署成本。intv_ai_mk11采用的Llama架构7B参数Q4量化组合…...

Phi-3-mini-4k-instruct-gguf代码实例:curl健康检查与supervisor服务管理实操

Phi-3-mini-4k-instruct-gguf代码实例&#xff1a;curl健康检查与supervisor服务管理实操 1. 模型简介与部署准备 Phi-3-mini-4k-instruct-gguf是微软Phi-3系列中的轻量级文本生成模型GGUF版本&#xff0c;特别适合问答、文本改写、摘要整理和简短创作等场景。这个经过优化的…...

FocalNet目标检测、实例分割模型环境配置FocalNet目标检测、实例分割模型数据集调整FocalNet目标检测、实例分割模型代跑训练FocalNet目标检测、实例分割改进创新Focal

FocalNet目标检测、实例分割模型环境配置 FocalNet目标检测、实例分割模型数据集调整 FocalNet目标检测、实例分割模型代跑训练 FocalNet目标检测、实例分割改进创新 FocalNet环境配置&#xff1a;Windows、Ubuntu、Centos、Macos等系统环境&#xff0c;如果电脑拥有显卡&#…...

别再让MCU直连MOSFET了!用N531搭建你的第一个栅极驱动电路(附PCB文件)

从零构建高效MOSFET驱动电路&#xff1a;N531实战指南 在嵌入式开发中&#xff0c;直接使用MCU的GPIO驱动功率MOSFET是一个常见但危险的做法。我曾亲眼见过一个智能家居项目因为这种设计导致整个控制板烧毁——MOSFET开关缓慢产生的高温不仅损坏了功率器件&#xff0c;还反向影…...

Doorkeeper与Rails Engines集成终极指南:如何在大型项目中组织认证模块

Doorkeeper与Rails Engines集成终极指南&#xff1a;如何在大型项目中组织认证模块 【免费下载链接】doorkeeper Doorkeeper is an OAuth 2 provider for Ruby on Rails / Grape. 项目地址: https://gitcode.com/gh_mirrors/do/doorkeeper Doorkeeper是一个强大的OAuth …...

SEO 实战培训班在哪里_SEO 优化师培训在哪里

SEO 实战培训班在哪里_SEO 优化师培训在哪里 在当今数字化时代&#xff0c;网站的流量和排名直接关系到企业的生存和发展。这就是为什么越来来越多的企业和个人希望掌握SEO优化技能&#xff0c;成为一名优秀的SEO优化师。SEO 实战培训班在哪里呢&#xff1f;SEO 优化师培训在哪…...

evive嵌入式平台:集成示波器与函数发生器的Arduino Mega开发系统

1. evive嵌入式平台技术解析&#xff1a;面向教育与工程调试的全功能Arduino Mega开发系统evive是一个以Arduino Mega 2560为核心控制器的开源嵌入式硬件平台&#xff0c;专为创客教育、实验教学、原型验证与嵌入式系统调试而设计。其核心价值不在于提供更高主频或更复杂外设&a…...