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

Atlas 800I A2 离线部署 DeepSeek-R1-Distill-Llama-70B

一、环境信息

1.1、硬件信息

Atlas 800I A2

1.2、环境信息

注意:这里驱动固件最好用商业版,我这里用的社区版有点小问题

操作系统:openEuler 22.03 LTS
NPU驱动:Ascend-hdk-910b-npu-driver_24.1.rc3_linux-aarch64.run
NPU固件:Ascend-hdk-910b-npu-firmware_7.5.0.1.129.run
MindIE镜像:2.0.T3-800I-A2-py311-openeuler24.03-lts

二、安装驱动固件

2.1、创建运行用户和所属组

groupadd HwHiAiUser
useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash

2.2、安装驱动(根据提示选择是否重启)

./Ascend-hdk-910b-npu-driver_24.1.rc3_linux-aarch64.run --full --install-for-all

2.3、安装固件(根据提示选择是否重启)

./Ascend-hdk-910b-npu-firmware_7.5.0.1.129.run --full

三、创建容器

docker run -itd --privileged  --name=deepseek-70b --net=host \--shm-size 500g \--device=/dev/davinci0 \--device=/dev/davinci1 \--device=/dev/davinci2 \--device=/dev/davinci3 \--device=/dev/davinci4 \--device=/dev/davinci5 \--device=/dev/davinci6 \--device=/dev/davinci7 \--device=/dev/davinci_manager \--device=/dev/hisi_hdc \--device=/dev/devmm_svm \-v /usr/local/Ascend/driver:/usr/local/Ascend/driver \-v /usr/local/Ascend/firmware:/usr/local/Ascend/firmware \-v /usr/local/sbin/npu-smi:/usr/local/sbin/npu-smi \-v /usr/local/sbin:/usr/local/sbin \-v /etc/hccn.conf:/etc/hccn.conf \-v /data:/data \swr.cn-south-1.myhuaweicloud.com/ascendhub/mindie:2.0.T3-800I-A2-py311-openeuler24.03-lts \bash

四、配置、启动MindIE服务

4.1、配置环境变量

vim ~/.bashrcsource /usr/local/Ascend/ascend-toolkit/set_env.sh
source /usr/local/Ascend/nnal/atb/set_env.sh
source /usr/local/Ascend/atb-models/set_env.sh
source /usr/local/Ascend/mindie/set_env.sh# 日志打印(默认Error级别)
export MINDIE_LOG_TO_STDOUT=1# 虚拟内存
export PYTORCH_NPU_ALLOC_CONF=expandable_segments:True# ATB WorkSpace 使能
export ATB_WORKSPACE_MEM_ALLOC_ALG_TYPE=3
export ATB_WORKSPACE_MEM_ALLOC_GLOBAL=1 # 单线程加速权重加载
export OMP_NUM_THREADS=1# 设置精度饱和模式,防止fp16引起的上下溢出
export INF_NAN_MODE_ENABLE=0# 关闭确定性计算
export HCCL_DETERMINISTIC=false# 使能AIV,暂时还有问题性问题,不建议线上业务使用,性能复现必须开启
export HCCL_OP_EXPANSION_MODE="AIV"# 使能内存复用
export ATB_LAYER_INTERNAL_TENSOR_REUSE=1
export ATB_OPERATION_EXECUTE_ASYNC=1
export ATB_CONVERT_NCHW_TO_ND=1
export ATB_WORKSPACE_MEM_ALLOC_GLOBAL=1
export ATB_WORKSPACE_MEM_ALLOC_ALG_TYPE=3
export ATB_CONTEXT_WORKSPACE_SIZE=0
export ATB_LAUNCH_KERNEL_WITH_TILING=1
export ATB_LLM_ENABLE_AUTO_TRANSPOSE=0# CPU亲和性调度
export CPU_AFFINITY_CONF=1
export TASK_QUEUE_ENABLE=1
unset ASCEND_LAUNCH_BLOCKING

4.2、配置mindie配置文件

# 修改MindIE配置文件
cd /usr/local/Ascend/mindie/latest/mindie-service/
vim conf/config.json

 修改点标红项:

{
    "Version" : "1.0.0",
    "LogConfig" :
    {
        "logLevel" : "Info",
        "logFileSize" : 20,
        "logFileNum" : 20,
        "logPath" : "logs/mindie-server.log"
    },

    "ServerConfig" :
    {
        "ipAddress" : "0.0.0.0",
        "managementIpAddress" : "127.0.0.2",
        "port" : 1025,
        "managementPort" : 1026,
        "metricsPort" : 1027,
        "allowAllZeroIpListening" : true,
        "maxLinkNum" : 1000,
        "httpsEnabled" : false,
        "fullTextEnabled" : false,
        "tlsCaPath" : "security/ca/",
        "tlsCaFile" : ["ca.pem"],
        "tlsCert" : "security/certs/server.pem",
        "tlsPk" : "security/keys/server.key.pem",
        "tlsPkPwd" : "security/pass/key_pwd.txt",
        "tlsCrlPath" : "security/certs/",
        "tlsCrlFiles" : ["server_crl.pem"],
        "managementTlsCaFile" : ["management_ca.pem"],
        "managementTlsCert" : "security/certs/management/server.pem",
        "managementTlsPk" : "security/keys/management/server.key.pem",
        "managementTlsPkPwd" : "security/pass/management/key_pwd.txt",
        "managementTlsCrlPath" : "security/management/certs/",
        "managementTlsCrlFiles" : ["server_crl.pem"],
        "kmcKsfMaster" : "tools/pmt/master/ksfa",
        "kmcKsfStandby" : "tools/pmt/standby/ksfb",
        "inferMode" : "standard",
        "interCommTLSEnabled" : false,
        "interCommPort" : 1121,
        "interCommTlsCaPath" : "security/grpc/ca/",
        "interCommTlsCaFiles" : ["ca.pem"],
        "interCommTlsCert" : "security/grpc/certs/server.pem",
        "interCommPk" : "security/grpc/keys/server.key.pem",
        "interCommPkPwd" : "security/grpc/pass/key_pwd.txt",
        "interCommTlsCrlPath" : "security/grpc/certs/",
        "interCommTlsCrlFiles" : ["server_crl.pem"],
        "openAiSupport" : "vllm"
    },

    "BackendConfig" : {
        "backendName" : "mindieservice_llm_engine",
        "modelInstanceNumber" : 1,
        "npuDeviceIds" : [[0,1,2,3,4,5,6,7]],
        "tokenizerProcessNumber" : 8,
        "multiNodesInferEnabled" : false,
        "multiNodesInferPort" : 1120,
        "interNodeTLSEnabled" : false,
        "interNodeTlsCaPath" : "security/grpc/ca/",
        "interNodeTlsCaFiles" : ["ca.pem"],
        "interNodeTlsCert" : "security/grpc/certs/server.pem",
        "interNodeTlsPk" : "security/grpc/keys/server.key.pem",
        "interNodeTlsPkPwd" : "security/grpc/pass/mindie_server_key_pwd.txt",
        "interNodeTlsCrlPath" : "security/grpc/certs/",
        "interNodeTlsCrlFiles" : ["server_crl.pem"],
        "interNodeKmcKsfMaster" : "tools/pmt/master/ksfa",
        "interNodeKmcKsfStandby" : "tools/pmt/standby/ksfb",
        "ModelDeployConfig" :
        {
            "maxSeqLen" : 2560,
            "maxInputTokenLen" : 2048,
            "truncation" : false,
            "ModelConfig" : [
                {
                    "modelInstanceType" : "Standard",
                    "modelName" : "deepseek-70b",
                    "modelWeightPath" : "/data/70b",
                    "worldSize" : 8,
                    "cpuMemSize" : 5,
                    "npuMemSize" : -1,
                    "backendType" : "atb",
                    "trustRemoteCode" : false
                }
            ]
        },

        "ScheduleConfig" :
        {
            "templateType" : "Standard",
            "templateName" : "Standard_LLM",
            "cacheBlockSize" : 128,

            "maxPrefillBatchSize" : 50,
            "maxPrefillTokens" : 8192,
            "prefillTimeMsPerReq" : 150,
            "prefillPolicyType" : 0,

            "decodeTimeMsPerReq" : 50,
            "decodePolicyType" : 0,

            "maxBatchSize" : 200,
            "maxIterTimes" : 512,
            "maxPreemptCount" : 0,
            "supportSelectBatch" : false,
            "maxQueueDelayMicroseconds" : 5000
        }
    }
}

# 设置权重的配置文件的权限
chmod 750 {/path-to-weights/config.json}# 拉起服务
nohup ./bin/mindieservice_daemon > output.log 2>&1 &# 停止服务
ps -ef | grep mindieservice
pkill -9 mindieservice

五、测试

curl http://IP:1025/v1/chat/completions -d '{"model": "改为mindie配置文件中设置的名称","messages": [{"role": "user", "content": "请告诉我关于人工智能的一些信息。"}],"stream": true}'

六、部署open-webui

# 修改点:
# OPENAI_API_BASE_URLS:改为自己的推理服务接口IP
# /data/open-webui:open-webui的数据存储目录docker run -itd --name open-webui \
--net host \
-e PORT=3006 \
-e OPENAI_API_BASE_URLS=http://192.168.50.1:1025/v1 \
-v /data/open-webui:/app/backend/data \
022ecf5a33b8 bash

相关文章:

Atlas 800I A2 离线部署 DeepSeek-R1-Distill-Llama-70B

一、环境信息 1.1、硬件信息 Atlas 800I A2 1.2、环境信息 注意:这里驱动固件最好用商业版,我这里用的社区版有点小问题 操作系统:openEuler 22.03 LTS NPU驱动:Ascend-hdk-910b-npu-driver_24.1.rc3_linux-aarch64.run NPU固…...

CF每日4题

1500左右的做到还是有点吃力 2093E 1500 二分答案 题意:给定一个长度为 n 的数组,现在要把它切成 k 份,求每一份最小的MEX中的最大值。 就是找最大值,但是这个值是所有段最小的值采用二分答案,二分这个值&#xff0…...

vue3 实现将html内容导出为图片、pdf和word

话不多说直接开始 本文使用到的开源插件库地址 wang1xiang 1.1 下载依赖 npm install html2canvas jspdf html-docx-js-typescript file-saver --save 2.1 下载工具 npm install html2image-pdf-word --save 3.1 页面使用 <template><div><div click"…...

手机端本地服务与后端微服务的技术差异

以下是手机内部本地服务与后端微服务架构及通信协议的对比分析&#xff0c;结合两者的核心设计差异与技术实现特点展开&#xff1a; 一、架构设计对比 维度手机端本地服务后端微服务核心目标资源效率、离线优先、动态更新高并发处理、分布式事务、服务治理服务拆分粒度按功能…...

音视频之H.265/HEVC环路后处理

H.265/HEVC系列文章&#xff1a; 1、音视频之H.265/HEVC编码框架及编码视频格式 2、音视频之H.265码流分析及解析 3、音视频之H.265/HEVC预测编码 4、音视频之H.265/HEVC变换编码 5、音视频之H.265/HEVC量化 6、音视频之H.265/HEVC环路后处理 类似于以往的视频编码标准,H…...

RSUniVLM论文精读

一些收获&#xff1a; 1. 发现这篇文章的table1中&#xff0c;有CDChat ChangeChat Change-Agent等模型&#xff0c;也许用得上。等会看看有没有源代码。 摘要&#xff1a;RSVLMs在遥感图像理解任务中取得了很大的进展。尽管在多模态推理和多轮对话中表现良好&#xff0c;现有模…...

redis特性及应用场景

文章目录 什么是redis&#xff1f;热库redis作为热库的特性redis适用场景 什么是redis&#xff1f; redis在系统架构中的位置就是冷热分离架构的热数据库位置&#xff0c; redis就是热库&#xff0c; 我们一般说缓存数据库。 其他的像MySQL、SQL Server这种关系数据库、MongoDB…...

Java中正则表达式使用方法

1. 正则表达式概述 正则表达式&#xff08;Regular Expression&#xff0c;简称 Regex&#xff09;是一种用于匹配字符串的模式工具。在 Java 中&#xff0c;正则表达式通过 java.util.regex 包实现&#xff0c;主要涉及以下两个类&#xff1a; Pattern&#xff1a;表示一个编…...

CSS基础

1. CSS入门 1.1. CSS是什么 CSS是Cascading Style Sheets的缩写&#xff0c;翻译为层叠样式表。CSS是一种样式表语言&#xff0c;用来描述HTML文档的表现方式&#xff0c;如字体、色彩、背景色等等。我们先从一段简单的CSS代码开始。 代码1 CSS示例 p {color: red; }这段代…...

【Linux系统篇】:什么是信号以及信号是如何产生的---从基础到应用的全面解析

✨感谢您阅读本篇文章&#xff0c;文章内容是个人学习笔记的整理&#xff0c;如果哪里有误的话还请您指正噢✨ ✨ 个人主页&#xff1a;余辉zmh–CSDN博客 ✨ 文章所属专栏&#xff1a;Linux篇–CSDN博客 文章目录 一.信号概念1.生活角度的信号2.技术应用角度的信号3.补充内容前…...

SpringSecurity源码解读AbstractAuthenticationProcessingFilter

一、介绍 AbstractAuthenticationProcessingFilter 是 Spring Security 框架里的一个抽象过滤器,它在处理基于表单的认证等认证流程时起着关键作用。它继承自 GenericFilterBean,并实现了 javax.servlet.Filter 接口。此过滤器的主要功能是拦截客户端发送的认证请求,对请求…...

Python torchvision.transforms 下常用图像处理方法

torchvision.transforms 是 PyTorch 用于处理图像数据的一个模块&#xff0c;提供了丰富的图像变换功能。 1. transforms.Compose 的使用方法 transforms.Compose 用于将多个 transforms 操作组合起来&#xff0c;形成一个变换序列&#xff0c;然后按顺序对图像进行处理。其输…...

Zynq7020 制作boot.bin及烧录到开发板全流程解析

Zynq7020作为Xilinx推出的经典SoC芯片&#xff0c;其PS&#xff08;Processing System&#xff09;与PL&#xff08;Programmable Logic&#xff09;协同工作的特性使其在嵌入式开发中广泛应用。然而&#xff0c;初次接触Zynq的开发者在制作启动文件boot.bin及烧录时&#xff0…...

【办公类-89-02】20250424会议记录模版WORD自动添加空格补全下划线

背景需求 4月23日听了一个MJB的征文培训&#xff0c;需要写会议记录 把资料黏贴到模版后&#xff0c;发现每行需要有画满下划线 原来做这套资料&#xff0c;就是手动按空格到一行末&#xff0c;有空格才会出现下划线&#xff0c;也就是要按很多的空格&#xff08;凑满一行&…...

Python-36:饭馆菜品选择问题

问题描述 小C来到了一家饭馆&#xff0c;这里共有 nn 道菜&#xff0c;第 ii 道菜的价格为 a_i。其中一些菜中含有蘑菇&#xff0c;s_i 代表第 ii 道菜是否含有蘑菇。如果 s_i 1&#xff0c;那么第 ii 道菜含有蘑菇&#xff0c;否则没有。 小C希望点 kk 道菜&#xff0c;且希…...

某大型电解铝厂电解系统谐波治理装置改造沃伦森电气

电解铝行业谐波治理解决方案——无源滤波装置优化升级&#xff0c;保障稳定运行 在电解铝生产过程中&#xff0c;谐波污染问题严重影响电网电能质量&#xff0c;甚至可能导致滤波装置损坏&#xff0c;引发群爆事故。河南登封某大型电解铝厂通过无源滤波装置智能化改造&#xff…...

基于YOLO+DeepSeek的农作物病虫害检测系统

前言 本系统是一个基于YOLODeepSeek的农作物病虫害检测系统。 可使用YOLOV1-YOLOV12的任意模型进行目标检测。可以实现检测图片、批量检测图片、视频检测、摄像头检测四种方式。 能够检测出[“苹果-黑腐病”, “苹果-健康”, “苹果-结痂”, “甜椒-细菌性斑疹”, “甜椒-健康…...

Python实现技能记录系统

Python实现技能记录系统 来自网络&#xff0c;有改进。 技能记录系统界面如下&#xff1a; 具有保存图片和显示功能——允许用户选择图片保存&#xff0c;选择历史记录时若有图片可预览图片。 这个程序的数据保存在数据库skills2.db中&#xff0c;此数据库由用Python 自带的…...

【专题刷题】二分查找(一):深度解刨二分思想和二分模板

&#x1f4dd;前言说明&#xff1a; 本专栏主要记录本人的基础算法学习以及LeetCode刷题记录&#xff0c;按专题划分每题主要记录&#xff1a;&#xff08;1&#xff09;本人解法 本人屎山代码&#xff1b;&#xff08;2&#xff09;优质解法 优质代码&#xff1b;&#xff…...

基于Python+Flask的MCP SDK响应式文档展示系统设计与实现

以下是使用Python Flask HTML实现的MCP文档展示系统&#xff1a; # app.py from flask import Flask, render_templateapp Flask(__name__)app.route(/) def index():return render_template(index.html)app.route(/installation) def installation():return render_templa…...

Flask + ajax上传文件(一)

一、概述 本教程将教你如何使用Flask后端和AJAX前端实现文件上传功能,包含完整的代码实现和详细解释。 二、环境准备 1. 所需工具和库 Python 3.xFlask框架jQuery库Bootstrap(可选,用于美化界面)2. 安装Flask pip install flask三、项目结构 upload_project/ ├── a…...

【每天一个知识点】熵(Entropy)

“熵&#xff08;Entropy&#xff09;”是信息论、热力学、机器学习等多个领域的核心概念。它可以用一句话概括为&#xff1a; &#x1f511; 熵表示系统的不确定性或信息混乱程度。 &#x1f4da; 一、信息论中的熵&#xff08;Information Entropy&#xff09; 在 Claude Sh…...

GIT 使用小记

全局设置 PS C:\workspace> git config --global user.name "FreeMan" PS C:\workspace> git config --global user.email "12323772wawhyuser.noreply.gitee.com" PS C:\workspace> git remote add origin https://gitee.com/wawhy/mountain.git…...

如何保证高防服务器中的系统安全?

对于高防服务器中的系统安全&#xff0c;企业通常会采取一系列的防护措施和策略防止网络攻击、入侵、恶意软件和其他网络安全威胁&#xff0c;下面是几个较为主要的安全防护措施&#xff0c;能够帮助企业提升高防服务器的安全性。 定期更新服务器中操作系统以及所有安装的软件&…...

【go语言】window环境从源码编译go

背景 早就听过go语言已经实现自举&#xff0c; 也就是使用旧版本go&#xff0c;来编译新版源码&#xff0c;得到新版本go。 步骤 1. 下载源码 git clone https://github.com/golang/go.git 2. 开始make cd go\src make.bat 3. 等待编译 卡住就按下回车 验证新版本 ……...

医学图像(DICOM数据)读取及显示(横断面、冠状面、矢状面、3D显示)为什么用ITK+VTK,单独用ITK或者VTK能实一样功能吗?

在医学图像处理中&#xff0c;结合使用 ITK 和 VTK 是常见的做法&#xff0c;因为它们各自专注于不同的核心功能。以下是逐步解释为何代码中同时使用两者&#xff0c;以及单独使用是否可行的分析&#xff1a; 1. 为什么用ITK处理DICOM数据&#xff1f; 1.1 ITK的DICOM处理优势…...

TiDB 深度解析与 K8S 实战指南

一、TiDB 核心特性与架构原理 1. 核心特性 分布式架构&#xff1a; 采用计算&#xff08;TiDB Server&#xff09;、存储&#xff08;TiKV&#xff09;、调度&#xff08;PD&#xff09;分离设计&#xff0c;支持水平扩展至 PB 级数据量。通过 PD 动态调度 Region&#xff08…...

WPS右键菜单中“上传到云文档”消失,使用命令行注册解决

关于上传到wps云文档&#xff0c;右键菜单莫名消失的问题 尝试在WPS设置显示上传到wps云文档的右键菜单&#xff0c;以及使用设置和修复工具修复&#xff0c;均无法显示菜单。 最终解决方法&#xff1a; regsvr32 "D:\Program Files (x86)\WPS Office\12.1.0.20784\offic…...

计算机求职面经内容与技巧分享

计算机求职面经内容与技巧分享 一、求职前的充分准备 &#xff08;一&#xff09;简历优化 突出技术能力&#xff1a;在简历中&#xff0c;务必清晰呈现自己精通的编程语言&#xff0c;例如熟练掌握 Java、Python 等语言的核心语法、常用库及框架。详细列举熟悉的技术栈&#x…...

java Springboot使用扣子Coze实现实时音频对话智能客服

一、背景 因公司业务需求&#xff0c;需要使用智能客服实时接听顾客电话。 现在已经完成的操作是&#xff0c;智能体已接入系统进行对练&#xff0c;所以本文章不写对联相关的功能。只有coze对接&#xff5e; 扣子提供了试用Realtime WebSocket&#xff0c;点击右上角setting配…...

焦化烧结行业无功补偿解决方案—精准分组补偿 稳定电能质量沃伦森

在焦化、烧结等冶金行业&#xff0c;负荷运行呈现长时阶梯状变化&#xff0c;功率波动相对平缓&#xff0c;但对无功补偿的分组精度要求较高。传统固定电容器组补偿方式无法动态跟随负荷变化&#xff0c;导致功率因数不稳定&#xff0c;甚至可能因谐波放大影响电网安全。 行业…...

机器人项目管理新风口:如何高效推动智能机器人研发?

在2025年政府工作报告中&#xff0c;“智能机器人”首次被正式纳入国家发展战略关键词。从蛇年春晚的秧歌舞机器人惊艳亮相&#xff0c;到全球首个人形机器人马拉松的热议&#xff0c;智能机器人不仅成为科技前沿的焦点&#xff0c;也为产业升级注入了新动能。而在热潮背后&…...

ZooKeeper配置优化秘籍:核心参数说明与性能优化

#作者&#xff1a;张桐瑞 文章目录 tickTime&#xff1a;Client-Server通信心跳时间initLimit&#xff1a;Leader-Follower初始通信时限syncLimit&#xff1a;Leader-Follower同步通信时限dataDir&#xff1a;数据文件目录clientPort&#xff1a;客户端连接端口服务器名称与地…...

uniapp -- 实现微信小程序、app、H5端视频上传

布局及实现代码&#xff1a; <template><view class"flex flex-column p-4 grid-gap-4"><view class"flex flex-column grid-gap-4 bg-white p-4 rounded-4"><view class"font-weight-600">视频名称</view><i…...

2025年Redis分片存储性能优化指南

一、分片规则与负载均衡 动态哈希分片‌ 采用CRC16算法计算键哈希值&#xff0c;通过hash_slot CRC16(key) % 16384确定槽位分布&#xff0c;结合Redis Cluster自动管理槽位迁移。 总分片数按需动态调整&#xff0c;例如从16节点扩容至32节点时&#xff0c;触发槽位重分配以…...

前端跨端框架的开发以及IOS和安卓的开发流程和打包上架的详细流程

以下是关于 前端跨端框架开发 以及 iOS/Android 原生开发流程与上架 的详细指南&#xff0c;涵盖技术选型、开发工具、打包发布全流程&#xff1a; 一、前端跨端开发框架对比与流程 主流跨端框架 框架技术栈性能接近原生生态成熟度适用场景React NativeJS/React80%⭐⭐⭐⭐⭐…...

项目《基于Linux下的mybash命令解释器》(二)

一、使用系统命令的完整代码 #include<stdio.h> #include<wait.h> #include<stdlib.h> #include<unistd.h> #include<assert.h> #include<string.h> #include<pwd.h>#define ARG_MAX 10//防止参数不够&#xff0c;可以做到一改全改…...

arm64适配系列文章-第十章-arm64环境上jenkins的部署

ARM64适配系列文章 第一章 arm64环境上kubesphere和k8s的部署 第二章 arm64环境上nfs-subdir-external-provisioner的部署 第三章 arm64环境上mariadb的部署 第四章 arm64环境上nacos的部署 第五章 arm64环境上redis的部署 第六章 arm64环境上rabbitmq-management的部署 第七章…...

PyTorch生成式人工智能实战(2)——PyTorch基础

PyTorch生成式人工智能实战&#xff08;2&#xff09;——PyTorch基础 0. 前言1. 创建 PyTorch 张量2. PyTorch 张量索引和切片3. PyTorch 张量形状4. 在 PyTorch 张量数学运算小结系列链接 0. 前言 为了训练生成式人工智能模型&#xff0c;我们可以使用多种数据格式&#xff…...

解决高德地图AMapUtilCoreApi、NetProxy类冲突

问题&#xff1a; Duplicate class com.amap.apis.utils.core.api.AMapUtilCoreApi found in modules jetified-3dmap-10.0.600 (com.amap.api:3dmap:10.0.600) and jetified-search-9.7.1 (com.amap.api:search:9.7.1) Duplicate class com.amap.apis.utils.core.api.NetProx…...

java—14 ZooKeeper

一、ZooKeeper简介 ZooKeeper是一种分布式协调服务&#xff0c;用于管理大型主机。在分布式环境中协调和管理服务 是一种复杂的过程&#xff0c;ZooKeeper通过简单的架构和API解决了这个问题。ZooKeeper运行开 发人员专注于核心应用程序逻辑&#xff0c;而不必担心应用程序的分…...

特征存储的好处:特征存储在机器学习开发中的优势

随着企业寻求提升机器学习生产力和运营能力 (MLOps),特征存储 (Feature Store) 的普及度正在迅速提升。随着 MLOps 技术的进步,特征存储正成为机器学习基础设施的重要组成部分,帮助企业提升模型的性能和解释能力,并加速新模型与生产环境的集成。这些存储充当集中式存储库,…...

【Promethus(普罗米修斯)介绍安装及使用】

一、系统介绍 1、什么是Prometheus? Prometheus:不仅是一款时间序列数据库,在整个生态上还是一套完整的监控系统。同时,还涉及许多以“explore”命名的客户端数据采集工具以及pushgateway网关。 官网:https://prometheus.io/ 文献:https://prometheus.io/docs/introdu…...

力扣热题100题解(c++)—矩阵

73.矩阵置零 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 int m matrix.size(); // 行数int n matrix[0].size(); // 列数bool firstRowZero false; // 标记第一行是否包含 0bool f…...

Spring Boot Controller 单元测试撰写

文章目录 引言标准用法必需依赖项核心注解说明代码示例 当涉及静态方法时的测试策略必需依赖项核心注解说明代码示例 引言 之前在编写 Controller 层的单元测试时&#xff0c;我一直使用 SpringBootTest 注解&#xff0c;但它会加载整个 Spring 应用上下文&#xff0c;资源开销…...

MVCC详解

目录 undo日志版本链 read view一致性视图 MVCC过程分析 读事务&写事务 Multi-Version Concurrency Control&#xff0c;多版本并发控制在读已提交和可重复读隔离级别下都实现了MVCC机制 undo日志版本链 一行数据被修改后&#xff0c;MySQL会保留修改前的数据&#xff08;u…...

【通关函数的递归】--递归思想的形成与应用

目录 一.递归的概念与思想 1.定义 2.递归的思想 3.递归的限制条件 二.递归举例 1.求n的阶乘 2.顺序打印一个整数的每一位 三.递归与迭代 前言:上篇博文分享了扫雷游戏的实现&#xff0c;这篇文章将会继续分享函数的递归相关知识点&#xff0c;让大家了解并掌握递归的思…...

Python爬虫实战:移动端逆向工具Fiddler经典案例

一、引言 在移动互联网迅猛发展的当下,移动端应用产生了海量的数据。对于开发者而言,获取这些数据对于市场调研、竞品分析、数据挖掘等工作具有重要意义。Fiddler 作为一款功能强大的 Web 调试代理工具,能够有效捕获、分析和修改移动端的网络请求,为开发者深入了解移动端网…...

从平台工程视角出发,重塑云原生后端的工程体系

📝个人主页🌹:慌ZHANG-CSDN博客 🌹🌹期待您的关注 🌹🌹 一、引言:从 DevOps 到平台工程,云原生后端的演进逻辑 云原生的广泛应用,使得后端系统的开发、部署与运维逐渐从“编写业务代码”演进为“构建工程平台”。过去,后端开发者通常将注意力集中于 API 编写…...

【Hive入门】Hive分区与分桶深度解析:优化查询性能的关键技术

引言 在大数据领域&#xff0c;Apache Hive作为构建在Hadoop之上的数据仓库工具&#xff0c;因其类SQL的查询语言(HiveQL)和良好的扩展性而广受欢迎。然而&#xff0c;随着数据量的增长&#xff0c;查询性能往往成为瓶颈。本文将深入探讨Hive中两种关键的数据组织技术——分区(…...