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

【银河麒麟高级服务器操作系统】服务器外挂存储ioerror分析及处理分享

更多银河麒麟操作系统产品及技术讨论,欢迎加入银河麒麟操作系统官方论坛

forum.kylinos.cn

了解更多银河麒麟操作系统全新产品,请点击访问

麒麟软件产品专区:product.kylinos.cn

开发者专区:developer.kylinos.cn

文档中心:document.kylinos.cn

服务器环境以及配置

系统环境

物理机/虚拟机/云/容器

物理机

网络环境

外网/私有网络/无网络

私有网络

硬件环境

处理器:

S2500

内存:

512GB

机器型号

擎天EF860

整机类型/架构:

arm64

BIOS版本:

 Great Wall BIOS V3.0

软件环境

具体操作系统版本

银河麒麟高级服务器操作系统

Kylin Linux Advanced Server release V10 (Lance)

内核版本

4.19.90-52.30.v2207.ky10.aarch64

现象描述

服务器巡检告显示有io error,需要进行分析。

现象分析

查看磁盘存储情况

根据串口日志,报IO Error错误的是dm-4和dm-5磁盘设备,对应的是/dev/mpathxsky02blk01和/dev/mpathxsky02blk02两块多路径盘。

分析串口日志

查看串口日志,系统出现过三次I/O error相关的报错,第一次导致系统发生了hung task,后面两次出现IO error报错后便出现了shutdown相关的日志打印。

分析第一次出现I/O error

日志中多次出现print_req_error: I/O error, dev sdb和print_req_error: I/O error, dev sdc的错误。这表明设备sdb和sdc发生了I/O错误。另外,日志中还出现了rejecting I/O to offline device的消息(例如:sd 3:0:0:1: rejecting I/O to offline device),这通常意味着设备已经离线,无法再进行I/O操作。这些I/O错误可能是由于硬盘故障、连接问题(例如,SATA线缆故障)或控制器问题引起的。

日志中有多个任务被报告为挂起超过1200秒,如xfsaild/dm-4和containerd。这些任务的挂起是由于无法完成的磁盘I/O请求导致的,因为设备已经离线或不可用。出现了任务挂起(通常和无法访问存储设备相关),导致最后内核触发了恐慌(Kernel panic - not syncing: hung_task: blocked tasks)。

sdb和sdc设备应该对应sd 3:0:0:0和sd 3:0:0:1,查看当前收集的sosreport中的lsscsi命令,由于相隔的时间太过久远,没有3:0:0:0和3:0:0:1相关的设备,变为了5:0:0:0和5:0:0:1。后续也未再出现过rejecting I/O to offline device,问题应该已经修复。

[30551.689416][ 86] print_req_error: I/O error, dev sdb, sector 278120^M
[30551.690643][ 86] print_req_error: I/O error, dev sdb, sector 526730880^M
[30551.691874][ 86] print_req_error: I/O error, dev sdb, sector 794630784^M
[30551.693092][ 86] print_req_error: I/O error, dev sdb, sector 3239552^M
[30601.823314][ 24] print_req_error: I/O error, dev sdb, sector 267177832^M
[30622.174613][ 23] print_req_error: I/O error, dev sdb, sector 267177832^M
[30627.418715][ 86] sd 3:0:0:1: rejecting I/O to offline device^M
[30627.420021][ 86] print_req_error: I/O error, dev sdc, sector 209772368^M
[30627.421253][ 86] print_req_error: I/O error, dev sdc, sector 209772376^M
[30627.438674][ 86] sd 3:0:0:0: rejecting I/O to offline device^M
[30627.439942][ 86] print_req_error: I/O error, dev sdb, sector 1745360^M
[30627.441180][ 86] print_req_error: I/O error, dev sdb, sector 788207504^M
[30627.442345][ 86] print_req_error: I/O error, dev sdb, sector 526731600^M
[30627.443517][ 86] print_req_error: I/O error, dev sdb, sector 263186528^M
[30627.444683][ 86] print_req_error: I/O error, dev sdb, sector 3239552^M
[31446.409648][ 28] print_req_error: I/O error, dev sdb, sector 267177832^M
[31467.420538][ 28] print_req_error: I/O error, dev sdb, sector 267177832^M
[31476.890512][ 61] print_req_error: I/O error, dev sdc, sector 209772368^M
[31476.891710][ 61] print_req_error: I/O error, dev sdc, sector 209772376^M
[31482.488033][ 84] sd 3:0:0:1: rejecting I/O to offline device^M
[31482.489254][ 84] print_req_error: I/O error, dev sdc, sector 209772392^M
[31482.490507][ 84] print_req_error: I/O error, dev sdc, sector 209772384^M
[31482.491733][ 84] print_req_error: I/O error, dev sdc, sector 209772400^M
[31482.492918][ 84] print_req_error: I/O error, dev sdc, sector 209772408^M
[31482.494051][ 84] sd 3:0:0:0: rejecting I/O to offline device^M
[31482.495054][ 84] print_req_error: I/O error, dev sdb, sector 270107808^M
[31482.496109][ 84] print_req_error: I/O error, dev sdb, sector 270106784^M
[31482.497193][ 84] print_req_error: I/O error, dev sdb, sector 788207504^M
[31871.417820][  4] INFO: task xfsaild/dm-4:402347 blocked for more than 1200 seconds.^M
[31871.419496][  4]       Tainted: G           OE     4.19.90-52.30.v2207.ky10.aarch64 #1^M
[31871.421055][  4] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.^M
[31871.422705][  4] xfsaild/dm-4    D    0 402347      2 0x00000628^M
[31871.423726][  4] Call trace:^M
[31871.424436][  4]  __switch_to+0xe8/0x150^M
[31871.425293][  4]  __schedule+0x2b0/0x768^M
[31871.426152][  4]  schedule+0x30/0xf0^M
[31871.426917][  4]  xfs_log_force+0x170/0x358^M
[31871.427809][  4]  xfsaild_push+0x5a8/0x6c0^M
[31871.428766][  4]  xfsaild+0x11c/0x238^M
[31871.429627][  4]  kthread+0x134/0x138^M
[31871.430447][  4]  ret_from_fork+0x10/0x18^M
[31871.431339][  4] INFO: task containerd:409512 blocked for more than 1200 seconds.^M
[31871.433064][  4]       Tainted: G           OE     4.19.90-52.30.v2207.ky10.aarch64 #1^M
[31871.434889][  4] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.^M
[31871.436710][  4] containerd      D    0 409512      1 0x00000608^M
[31871.437906][  4] Call trace:^M
[31871.438822][  4]  __switch_to+0xe8/0x150^M
[31871.439785][  4]  __schedule+0x2b0/0x768^M
[31871.440741][  4]  schedule+0x30/0xf0^M
[31871.441658][  4]  io_schedule+0x20/0x90^M
[31871.442570][  4]  wait_on_page_bit+0x134/0x178^M
[31871.443548][  4]  __filemap_fdatawait_range+0xd0/0x120^M
[31871.444618][  4]  file_write_and_wait_range+0xb0/0xd8^M
[31871.445655][  4]  xfs_file_fsync+0x58/0x1d8^M
[31871.446584][  4]  vfs_fsync_range+0x4c/0x90^M
[31871.447743][  4]  do_fsync+0x48/0x78^M
[31871.448623][  4]  sys_fdatasync+0x24/0x38^M
[31871.449503][  4]  __sys_trace_return+0x0/0x4^M
[31871.450841][  4] Kernel panic - not syncing: hung_task: blocked tasks^M
[31871.451999][  4] CPU: 4 PID: 748 Comm: khungtaskd Tainted: G           OE     4.19.90-52.30.v2207.ky10.aarch64 #1^M
[31871.453937][  4] Source Version: ccdbfc2c55f0fb8dde14fae29155446fc8a7e941^M
[31871.455059][  4] Hardware name: GreatWall æ\x93\x8e天EF860/GW-748F2A-FTG, BIOS Great Wall BIOS V3.0 2022-11-17^M
[31871.457098][  4] Call trace:^M
[31871.457908][  4]  dump_backtrace+0x0/0x1b0^M
[31871.458911][  4]  show_stack+0x24/0x30^M
[31871.459845][  4]  dump_stack+0xb4/0xf0^M
[31871.460748][  4]  panic+0x130/0x310^M
[31871.461654][  4]  watchdog+0x2b8/0x468^M
[31871.462536][  4]  kthread+0x134/0x138^M
[31871.463337][  4]  ret_from_fork+0x10/0x18^M
[31871.464354][  4] SMP: stopping secondary CPUs^M
[31871.584509][  4] Kernel Offset: 0x37db061e0000 from 0xffff000048000000^M
[31871.585577][  4] CPU features: 0x10,a0000008^M
[31871.586428][  4] Memory Limit: none^M
[31871.587456][  4] Rebooting in 10 seconds..^M

分析第二次出现I/O error

日志中先出现了多个print_req_error: I/O error, dev dm-4/5/6, sector xxxx,说明lvm逻辑卷输入输出出现错误。而后出现了XFS (dm-4): writeback error on sector xxxx,XFS 文件系统报告了writeback error和metadata I/O error,特别是在xlog_iodone操作中,错误发生在不同的扇区,涉及数据和元数据的读写操作。错误代码为error 5,对应于输入/输出错误(EIO),这表示底层存储设备无法完成读写请求。

而后马上出现了shutdown及reboot: Restarting system相关日志,这应是之前执行了关机操作。虽然是先出现了IO error的日志,而后出现的shutdown日志,但是shutdown操作并不会立即写到日志,推测是关机操作使得多路径存储设备下线,文件系统无法写入,而后出现的IO error。

[4931293.526231][ 71] print_req_error: I/O error, dev dm-4, sector 5428128^M
[4931293.526436][ 70] print_req_error: I/O error, dev dm-5, sector 15354992^M
[4931293.527010][ 71] XFS (dm-4): writeback error on sector 5428240^M
[4931293.527704][ 70] XFS (dm-5): writeback error on sector 15355120^M
[4931293.528811][ 70] print_req_error: I/O error, dev dm-5, sector 16527680^M
[4931293.529516][ 70] XFS (dm-5): writeback error on sector 16527808^M
[4931293.530124][ 70] print_req_error: I/O error, dev dm-5, sector 24740872^M
[4931293.530762][ 70] print_req_error: I/O error, dev dm-5, sector 27572552^M
[4931293.531550][ 70] XFS (dm-5): writeback error on sector 272373048^M
[4931293.532123][ 70] XFS (dm-5): writeback error on sector 276753512^M
[4931293.532702][ 70] XFS (dm-5): writeback error on sector 531646336^M
[4931293.533384][ 70] XFS (dm-5): writeback error on sector 24740992^M
[4931293.533961][ 70] XFS (dm-5): writeback error on sector 27572656^M
[4931293.534656][ 70] XFS (dm-5): writeback error on sector 288670704^M
[4931293.535240][ 70] XFS (dm-5): writeback error on sector 288670720^M
[4931293.538236][ 66] XFS (dm-4): metadata I/O error in "xlog_iodone" at daddr 0xc8086b0 len 64 error 5^M
[4931293.539266][ 66] XFS (dm-4): Log I/O Error Detected.  Shutting down filesystem^M
[4931293.539586][ 50] XFS (dm-5): metadata I/O error in "xlog_iodone" at daddr 0x1f402070 len 64 error 5^M
[4931293.540003][ 50] XFS (dm-4): Please umount the filesystem and rectify the problem(s)^M
[4931293.541683][ 50] XFS (dm-5): Log I/O Error Detected.  Shutting down filesystem^M
[4931293.542370][ 50] XFS (dm-5): Please umount the filesystem and rectify the problem(s)^M
[4931294.409340][ 99] XFS (dm-6): metadata I/O error in "xlog_iodone" at daddr 0x1f45ad90 len 64 error 5^M
[4931314.007532][ 42] shutdown: 9 output lines suppressed due to ratelimiting^M
[4931314.118056][ 47] dracut Warning: Killing all remaining processes^M
[4931314.508042][ 47] dracut Warning: Unmounted /oldroot.^M
[4931315.028993][ 75] kauditd_printk_skb: 8 callbacks suppressed^M
[4931328.960882][  0] reboot: Restarting system^M

分析第三次出现I/O error

和第二次出现IO error相同,出现IO error后,也立马出现了shutdown相关的日志。

[2001517.911050][102] print_req_error: I/O error, dev dm-6, sector 62984704^M
[2001517.911712][100] print_req_error: I/O error, dev dm-5, sector 218187936^M
[2001517.912383][102] XFS (dm-6): writeback error on sector 62984832^M
[2001517.913028][100] print_req_error: I/O error, dev dm-5, sector 216240008^M
[2001517.913138][100] print_req_error: I/O error, dev dm-5, sector 6241168^M
[2001517.913144][100] print_req_error: I/O error, dev dm-5, sector 7116376^M
[2001517.913166][100] XFS (dm-5): writeback error on sector 6241240^M
[2001517.913170][100] XFS (dm-5): writeback error on sector 7116472^M
[2001517.913174][100] XFS (dm-5): writeback error on sector 7116568^M
[2001517.913229][100] print_req_error: I/O error, dev dm-5, sector 6772344^M
[2001517.913254][100] XFS (dm-5): writeback error on sector 6772472^M
[2001517.913258][100] XFS (dm-5): writeback error on sector 6772520^M
[2001517.913263][100] XFS (dm-5): writeback error on sector 338549088^M
[2001517.913392][100] XFS (dm-5): writeback error on sector 110130576^M
[2001517.913398][100] XFS (dm-5): writeback error on sector 110130584^M
[2001517.923828][101] XFS (dm-5): metadata I/O error in "xlog_iodone" at daddr 0xc82f840 len 64 error 5^M
[2001517.925072][101] XFS (dm-5): Log I/O Error Detected.  Shutting down filesystem^M
[2001517.925237][103] XFS (dm-6): metadata I/O error in "xlog_iodone" at daddr 0x1f44c278 len 64 error 5^M
[2001517.925257][101] XFS (dm-6): metadata I/O error in "xlog_iodone" at daddr 0x1f44c2b8 len 64 error 5^M
[2001517.925419][103] XFS (dm-6): Log I/O Error Detected.  Shutting down filesystem^M
[2001517.925421][103] XFS (dm-6): Please umount the filesystem and rectify the problem(s)^M
[2001517.925840][103] XFS (dm-5): Please umount the filesystem and rectify the problem(s)^M
[2001518.084461][ 59] overlayfs: failed to get xattr trusted.overlay.redirect: err=-5)^M
[2001518.134555][ 29] overlayfs: failed to get xattr trusted.overlay.redirect: err=-5)^M
[2001518.134679][  8] overlayfs: failed to get metacopy (-5)^M
[2001518.135513][ 29] overlayfs: failed to get xattr trusted.overlay.redirect: err=-5)^M
[2001518.137716][ 17] overlayfs: failed to get xattr trusted.overlay.redirect: err=-5)^M
[2001518.138605][ 17] overlayfs: failed to get xattr trusted.overlay.redirect: err=-5)^M
[2001518.141203][ 71] overlayfs: failed to get metacopy (-5)^M
[2001518.143645][ 54] overlayfs: failed to get metacopy (-5)^M
[2001518.144968][ 95] overlayfs: failed to get metacopy (-5)^M
[2001518.145177][ 46] overlayfs: failed to get xattr trusted.overlay.redirect: err=-5)^M
[2001518.146489][ 46] overlayfs: failed to get xattr trusted.overlay.redirect: err=-5)^M
[2001518.148168][ 72] overlayfs: failed to get metacopy (-5)^M
[2001518.148170][ 34] overlayfs: failed to get metacopy (-5)^M
[2001518.148259][ 34] overlayfs: failed to get metacopy (-5)^M
[2001518.150749][ 96] overlayfs: failed to get metacopy (-5)^M
[2001518.152389][116] overlayfs: failed to get metacopy (-5)^M
[2001528.063127][ 97] systemd-shutdown[1]: Waiting for process: local-path-prov^M
[2001600.084921][123] kauditd_printk_skb: 23 callbacks suppressed^M
[2001613.949707][ 99] shutdown: 7 output lines suppressed due to ratelimiting^M
[2001614.020310][100] dracut Warning: Killing all remaining processes^M
[2001614.364201][100] dracut Warning: Unmounted /oldroot.^M
[2001628.676636][  0] reboot: Restarting system^M

查看tuned.log,出现了两次关机操作,应该是对应这两次IO error。

分析结果

第一次出现I/O错误时,日志中显示了 rejecting I/O to offline device的消息。这通常意味着设备已经离线,无法继续进行I/O操作,从而导致了I/O错误。由于这个错误的日志已经存在一段时间,问题应该已经得到解决。

第二次和第三次出现I/O错误时,伴随着关机相关的日志信息。具体来说,关机日志(shutdown 和 reboot)表明系统在I/O错误发生前,应该有执行关机操作。系统关机通常会触发文件系统的卸载和数据的回写,但由于多路径存储设备已经下线,XFS 无法完成日志写回和其他数据的持久化操作。日志中的XFS writeback error和metadata I/O error表明XFS文件系统在尝试进行数据写回时失败。尤其是在元数据操作过程中,XFS 在执行xlog_iodone操作时未能完成I/O请求,导致元数据无法成功写回。这些错误的原因是,XFS尝试将数据写入物理存储设备,但由于设备处于离线状态或无法访问,文件系统无法完成这些操作。

相关文章:

【银河麒麟高级服务器操作系统】服务器外挂存储ioerror分析及处理分享

更多银河麒麟操作系统产品及技术讨论,欢迎加入银河麒麟操作系统官方论坛 forum.kylinos.cn 了解更多银河麒麟操作系统全新产品,请点击访问 麒麟软件产品专区:product.kylinos.cn 开发者专区:developer.kylinos.cn 文档中心&a…...

麒麟信安举办特种行业核心代理商中级技术认证培训班

近日,麒麟信安举办为期一周的特种行业核心代理商中级技术认证培训班,吸引了众多来自各地代理商公司的技术骨干踊跃参与。 此次培训班旨在赋能合作伙伴,助力其深入理解并熟练运用麒麟信安产品的核心优势,进一步提升在特种行业中的业…...

非对称加密:为什么RSA让“公开传密”成为可能

在1977年之前,加密世界遵循一个铁律:想要安全通信,必须先秘密交换密钥。无论是凯撒密码还是二战时的恩尼格玛机,都依赖发送方和接收方预先共享同一把“钥匙”。但RSA算法的出现颠覆了这一规则——它让陌生人可以在完全公开的环境下…...

阿里云ddos云防护服务器有哪些功能?ddos防御手段有哪些??

阿里云ddos云防护服务器有哪些功能?ddos防御手段有哪些?? DDoS(分布式拒绝服务)云防护服务器通过多种技术和策略来抵御大规模网络攻击,确保服务的高可用性。以下是其主要功能和防御手段的详细说明: 一、D…...

如何防止域名DNS被劫持?

防止域名DNS被劫持需要综合技术手段和管理措施,以下是一份详细的防护方案: --- ### **一、基础防护措施** 1. **选择可靠的域名注册商和DNS服务商** - 优先选择支持DNSSEC、提供多因素认证(MFA)的知名服务商(如Cl…...

桥隧坡灾害监测报警:用科技筑起生命安全的“智能防线”

.2024年,梅大高速茶阳路段高边坡塌方事件造成重大伤亡,举国痛心。这场悲剧再次敲响警钟:桥梁、隧道、边坡等高风险区域的实时监测与精准报警,已成为交通安全的生命线。如何用技术手段在灾害发生前“抢跑”,第一时间阻断…...

K8S常见问题汇总

一、 驱逐 master 节点上的所有 Pod 这会“清空”一个节点&#xff08;包括 master&#xff09;上的所有可驱逐的 Pod&#xff1a; kubectl drain <master-node-name> --ignore-daemonsets --delete-emptydir-data--ignore-daemonsets&#xff1a;保留 DaemonSet 类型的…...

ideal创建Springboot项目(Maven,yml)

以下是使用 IntelliJ IDEA 创建基于 Maven 的 Spring Boot 项目并使用 YAML 配置文件的详细步骤&#xff1a; 一、创建 Spring Boot 项目 启动项目创建向导 打开 IntelliJ IDEA&#xff0c;点击“File”->“New”->“Project”。 在弹出的“New Project”窗口中&#…...

解决:‘java‘ 不是内部或外部命令,也不是可运行的程序-Java环境变量配置(含JDK8、JDK21安装包一站式配置)

在使用命令行运行 .jar 文件时&#xff0c;很多用户会遇到如下错误提示&#xff1a; java 不是内部或外部命令&#xff0c;也不是可运行的程序或批处理文件。 这个报错表明系统无法识别 java 命令&#xff0c;通常是由于 Java 没有正确安装&#xff0c;或是系统环境变量没有配…...

android.app.Fragment和androidx.fragment:fragment的区别

android.app.Fragment 与 androidx.fragment.app.Fragment 的区别 这两个 Fragment 实现代表了 Android 碎片化开发的两个时代&#xff0c;以下是它们的核心区别&#xff1a; 一、起源与演变 android.app.Fragmentandroidx.fragment.app.Fragment引入时间Android 3.0 (API 1…...

OrangePi Zero 3学习笔记(Android篇)3 - 串口

目录 1. 找到串口号 2. 修改串口权限 3. 串口类 3.1 serialport.hpp 3.2 serialport.cpp 3.2.1 构造函数 3.2.2 Open函数 3.2.3 Close函数 3.2.4 Write函数 3.2.5 Read函数 3.2.6 SetFlowCtrl函数 4. 测试程序 5. 编译 6. 运行验证 除了默认的UART用于shell&…...

Node.js 技术原理分析系列9——Node.js addon一文通

Node.js 是一个开源的、跨平台的JavaScript运行时环境&#xff0c;它允许开发者在服务器端运行JavaScript代码。Node.js 是基于Chrome V8引擎构建的&#xff0c;专为高性能、高并发的网络应用而设计&#xff0c;广泛应用于构建服务器端应用程序、网络应用、命令行工具等。 本系…...

HBuilderX安卓真机运行安装失败解决汇总

前置方案 1. 确认USB调试和连接模式 &#xff08;1&#xff09;开启USB调试&#xff1a;进入手机设置 > 开发者选项 > 确保USB调试已开启&#xff08;如无开发者选项&#xff0c;连续点击“版本号”激活&#xff09;。 &#xff08;2&#xff09;连接模式&#xff1a;将…...

TensorFlow 2.x入门实战:从零基础到图像分类项目

TensorFlow 2.x入门实战&#xff1a;从零基础到图像分类项目 前言 TensorFlow是Google开发的开源机器学习框架&#xff0c;已成为深度学习领域的重要工具。TensorFlow 2.x版本相比1.x有了重大改进&#xff0c;更加易用且功能强大。本文将带你从零开始学习TensorFlow 2.x&…...

SpringBoot+Dubbo+Zookeeper实现分布式系统步骤

SpringBootDubboZookeeper实现分布式系统 一、分布式系统通俗解释二、环境准备&#xff08;详细版&#xff09;1. 软件版本2. 安装Zookeeper&#xff08;单机模式&#xff09; 三、完整项目结构&#xff08;带详细注释&#xff09;四、手把手代码实现步骤1&#xff1a;创建父工…...

数据中台-常用工具组件:DataX、Flink、Dolphin Scheduler、TensorFlow和PyTorch等

数据实施服务工具组件概览 数据中台的数据实施服务涵盖 数据采集、处理、调度、分析与应用 全流程&#xff0c;以下为关键工具组件及其作用&#xff1a; 工具类型核心功能典型应用场景DataX离线数据采集多源异构数据批量同步数据仓库ODS层数据导入Apache Flink实时计算引擎流…...

【PostgreSQL数据分析实战:从数据清洗到可视化全流程】电商数据分析案例-9.2 流量转化漏斗分析

&#x1f449; 点击关注不迷路 &#x1f449; 点击关注不迷路 &#x1f449; 点击关注不迷路 文章大纲 9.2 流量转化漏斗分析&#xff1a;从数据清洗到可视化全流程实战一、背景与目标二、数据准备与清洗2.1 数据来源与字段说明2.2 数据清洗步骤2.2.1 去除无效数据2.2.2 处理时…...

结合Splash与Scrapy:高效爬取动态JavaScript网站

在当今的Web开发中&#xff0c;JavaScript的广泛应用使得许多网站的内容无法通过传统的请求-响应模式直接获取。为了解决这个问题&#xff0c;Scrapy开发者经常需要集成像Splash这样的JavaScript渲染引擎。本文将详细介绍Splash JS引擎的工作原理&#xff0c;并探讨如何将其与S…...

[计算机科学#10]:早期的计算机编程方式

【核知坊】&#xff1a;释放青春想象&#xff0c;码动全新视野。 我们希望使用精简的信息传达知识的骨架&#xff0c;启发创造者开启创造之路&#xff01;&#xff01;&#xff01; 内容摘要&#xff1a;1804年&#xff0c;为了在织布机上编织出丰富多彩的…...

JAVA:Spring Boot 集成 Lua 的技术博客

1、简述 在现代开发中,Lua 以其轻量级、高性能以及易嵌入的特点广泛用于脚本扩展、游戏开发以及配置处理场景。将 Lua 与 Spring Boot 集成,可以在 Java 项目中实现动态脚本功能,增强项目的灵活性和动态配置能力。 样例代码: https://gitee.com/lhdxhl/springboot-example…...

代码随想录算法训练营 Day40 动态规划Ⅷ 股票问题

动态规划 题目 121. 买卖股票的最佳时机 - 力扣&#xff08;LeetCode&#xff09; 使用二维 dp 数组表示 1. dp[i][0] 表示持有股票的最大金额&#xff0c;dp[i][1] 表示不持有股票的最大金额&#xff0c;表示盈利结果 2. 递推公式由前一天持有金额和是否买股票决定 决定是否…...

【已解决】WORD域相关问题;错误 未找到引用源;复制域出错;交叉引用域到底是个啥

&#xff08;微软赶紧倒闭 所有交叉引用域&#xff0c;有两个状态&#xff1a;1.锁定。2.手动。可通过编辑->链接查看。 “锁定”状态域的能力&#xff1a; 1. 导出PDF格式稳定&#xff08;【已解决】WORD导出PDF时&#xff0c;参考文献上标自动被取消/变为正常文本_word…...

小米 MiMo 开源:7B 参数凭什么 “叫板” AI行业巨头?

目录 一、技术革命的起点&#xff1a;小米AI战略的“破局者” 1.1 战略背景&#xff1a;从硬件厂商到AI基础设施提供商 1.2 团队揭秘&#xff1a;“天才少女”罗福莉与小米AI梦之队 二、技术架构解析&#xff1a;7B参数如何实现“推理跃迁” 2.1 核心技术原理 2.2 技术指…...

构建高可用性的LVS-DR群集:实现无缝的负载均衡与故障转移

目录 一、LVS-DR集群 1.LVS-DR工作原理 2.数据包流向分析 3.LVS-DR模式特点 二、直接路由模式&#xff08;LVS-DR&#xff09; 1.资源清单 2.配置负载调度器(lvs) 3.配置节点服务器(web1、web2) 4.测试LVS群集 5.使用NFS发布共享资源&#xff08;nfs上&#xff09; …...

低光图像增强新色彩空间HVI:技术突破与创新解析(HVI: ANewColor Space for Low-light Image Enhancement)

摘要 低光图像增强&#xff08;LLIE&#xff09;是计算机视觉领域的关键任务&#xff0c;旨在从受损的低光图像中恢复细节信息。针对现有方法在标准RGB&#xff08;sRGB&#xff09;空间易产生色偏与亮度伪影的问题&#xff0c;以及HSV色彩空间转换引发的红/黑噪声问题&#xf…...

Abaqus学习笔记

目录 Abaqus介绍 学习资源 ​编辑Abaqus/CAE abaqus下载安装 abaqus基本操作 Abaqus启动 新建模型 ​编辑 ​编辑修改界面背景 ​编辑​编辑结果信息的显示与否 ​编辑计算结果信息字体设置 ​编辑允许多绘图状态 单位量纲 视图操作 事前说明 ODB文件 本构关系…...

AquaCrop 模型新视角:多技术助力农业精准水管理

技术点目录 模型原理介绍与数据要求及模型分析数据制备、模型运行与案例实践&#xff08;界面GUI版本&#xff09;模型优化与敏感性分析&#xff08;基于R语言实践&#xff09;源代码分析&#xff08;基于FORTRAN&#xff09;未来气候变化影响分析与案例实践&#xff08;基于Py…...

从知识图谱到精准决策:基于MCP的招投标货物比对溯源系统实践

前言 从最初对人工智能的懵懂认知,到逐渐踏入Prompt工程的世界,我们一路探索,从私有化部署的实际场景,到对DeepSeek技术的全面解读,再逐步深入到NL2SQL、知识图谱构建、RAG知识库设计,以及ChatBI这些高阶应用。一路走来,我们在AI的领域里一步一个脚印,不断拓展视野和能…...

【平面波导外腔激光器专题系列】1064nm单纵模平面波导外腔激光器‌

摘要&#xff1a;我们介绍了平面波导外腔二极管激光器 (PW-ECL) 的特性。据我们所知&#xff0c;这是第一款蝶形封装的 1064nm半导体激光器&#xff0c;其可以稳定锁定到外部参考频率。我们从精密实验的角度评估了它的性能&#xff0c;特别是使用碘的超精细吸收线&#xff0c;在…...

C++ 算法学习之旅:从入门到精通的秘籍

在编程的浩瀚宇宙中&#xff0c;C 算法宛如璀璨的星辰&#xff0c;照亮我们前行的道路。作为一名 C 算法小白&#xff0c;或许你和我一样&#xff0c;怀揣着对算法的好奇与憧憬&#xff0c;却又在学习的道路上感到迷茫。别担心&#xff0c;今天我就和大家分享一下如何学习各种基…...

按摩椅上的气囊系统 是现代按摩椅中非常关键的组成部分,它与机芯系统相辅相成,为用户提供全方位、更接近真人按摩的体验

按摩椅上的气囊系统是现代按摩椅中非常关键的组成部分&#xff0c;它与机芯系统相辅相成&#xff0c;为用户提供全方位、更接近真人按摩的体验。 一、按摩椅气囊的产生背景 1. 传统按摩方式的局限 早期的按摩椅主要依赖机械式的“凸轮电机”或简单的机芯滚轮结构&#xff0c;…...

配置Hadoop集群环境-使用脚本命令实现集群文件同步

&#xff08;一&#xff09;Hadoop的运行模式 hadoop一共有如下三种运行方式&#xff1a; 1. 本地运行。数据存储在linux本地&#xff0c;测试偶尔用一下。我们上一节课使用的就是本地运行模式hadoop100。 2. 伪分布式。在一台机器上模拟出 Hadoop 分布式系统的各个组件&…...

Linux系统(OpenEuler22.03-LTS)部署FastGPT

在 openEuler 22.03 LTS 系统上通过 Docker Compose 安装 FastGPT 的步骤如下&#xff1a; 官方参考文档&#xff1a;https://doc.fastgpt.cn/docs/development/docker/ 1. 安装 Docker 和 Docker Compose 可以参考我之前离线安装Docker的文章&#xff1a;openEuler 22.03 LT…...

FastExcel 本地开发和Linux上上传Resource文件的差异性

不能直接通过路径来获取 这个是一个下载导出文件的操作 GetMapping(value "/export/all") public void exportAll(HttpServletResponse response, LaylineListReq req) throws IOException {// 从类路径下获取 Excel 文件资源ClassPathResource classPathResource…...

Excel学习笔记

在excel表格中&#xff0c;某列的数据最大&#xff0c;则整行都红色底色标出&#xff0c;怎么实现&#xff1f; 更改x值&#xff0c;excel图表上动态显示 该值的Y值且动态显示十字交叉线 为了实现如下图所示的效果&#xff0c;需要做出几个辅助列就行。 step1&#xff1a;先写…...

数据中台-数仓分层结构【Doris】

数据仓库采用Doris进行搭建&#xff0c;并分为ODS/DWD/DWM/DWS/ADS等层级结构进行分层数据存储。Doris是百度开源的MPP数据库&#xff0c;可有效支撑大数据量的数据计算和分布式扩展存储。 数据仓库分层架构设计目标 解耦与复用性&#xff1a;通过分层隔离原始数据与业务逻辑&a…...

使用Jmeter对AI模型服务进行压力测试

一、JMeter介绍 Apache JMeter 是一款开源的性能测试工具&#xff0c;主要用于评估Web应用程序的负载和性能。它支持多种类型的测试&#xff0c;包括但不限于&#xff1a; 负载测试&#xff1a;模拟大量用户访问系统以检测其在高负载下的表现。性能测试&#xff1a;评估系统在…...

测试用例管理平台哪些好用?9款主流测试平台对比

在当今软件开发领域&#xff0c;测试用例管理平台已成为提升产品质量和团队协同效率的关键工具。本文将围绕“测试用例管理平台”这一核心关键词&#xff0c;全面解析市面上9款主流产品&#xff0c;帮助企业管理者和测试团队快速了解各平台的核心优势和适用场景&#xff0c;从而…...

C++函数传值与传引用对比分析

在C编程中&#xff0c;函数参数传递的方式直接影响程序的性能、内存管理以及代码逻辑的正确性。传值&#xff08;Pass by Value&#xff09;和传引用&#xff08;Pass by Reference&#xff09;是两种最常用的参数传递方式&#xff0c;它们各有优缺点&#xff0c;适用于不同的场…...

【se-res模块学习】结合CIFAR-10分类任务学习

继CIFAR-10图像分类&#xff1a;【Res残差连接学习】结合CIFAR-10任务学习-CSDN博客 再优化 本次训练结果在测试集上的准确率表现可达到90%以上 1.训练模型&#xff08;MyModel.py&#xff09; import torch import torch.nn as nnclass SENet(nn.Module): # SE-Net模块def…...

二元随机响应(Binary Randomized Response, RR)的翻转概率

随机响应&#xff08;Randomized Response&#xff09;机制 ✅ 回答核心&#xff1a; p 1 1 e ε 才是「翻转概率」 \boxed{p \frac{1}{1 e^{\varepsilon}}} \quad \text{才是「翻转概率」} p1eε1​​才是「翻转概率」 而&#xff1a; q e ε 1 e ε 是「保留真实值」…...

湖北理元理律师事务所:债务优化中的“生活保障”方法论

债务危机往往伴随生活质量骤降&#xff0c;如何在还款与生存间找到平衡点&#xff0c;成为债务优化的核心挑战。湖北理元理律师事务所基于多年实务经验&#xff0c;提出“双轨并行”策略&#xff1a;法律减负与生活保障同步推进。 债务优化的“温度法则” 1.生存资金预留机制…...

RFID智能书柜:精准定位,找书告别 “大海捞针”

在传统图书馆的浩瀚书海&#xff0c;找书无异于在错综复杂的迷宫里徘徊。读者在书架间来回奔波&#xff0c;耗费大量时间精力&#xff0c;还常一无所获。RFID智能书柜的出现&#xff0c;彻底改写了这一局面。它搭载的RFID读写器与天线协同工作&#xff0c;能实时精准定位贴有RF…...

视觉图像处理及多模态融合初探

(一)指标汇总 1. 图像采集与质量提升 指标描述可能的量化值图像清晰度反映图像中物体的边缘和细节的清晰程度例如:1-10 分(1 为极不清晰,10 为非常清晰)噪声水平表示图像中随机噪声的多少例如:噪声强度百分比(0%-100%)畸变程度描述图像中物体形状的变形程度例如:畸变…...

射频前端模组芯片(PA)三伍微电子GSR2337 兼容替代SKY85337, RTC7646, KCT8247HE

射频前端模组芯片&#xff08;PA&#xff09;三伍微电子GSR2337 兼容替代SKY85337, RTC7646, KCT8247HE 型号GSR2337 ‌频率‌: 2.4 GHz ‌类型‌: FEM (PALNASW) ‌WIFI‌: 11n/ac/ax ‌功率‌: 21dBmEVM-43dB5V ‌封装‌: 3*3 mm ‌电压‌: 3.3V & 5V ‌P2P‌: SKY85…...

python 接收c++的.so传的jsoncpp字符串

叮&#xff01;快来看看我和文心一言的奇妙对话&#xff5e;点击链接 https://yiyan.baidu.com/share/57o6vGa3GY -- 文心一言&#xff0c;既能写文案、读文档&#xff0c;又能绘画聊天、写诗做表&#xff0c;你的全能伙伴&#xff01; 要从 C 动态链接库 (.so 文件) 中接收 JS…...

EasyRTC嵌入式音视频通话SDK驱动智能硬件音视频应用新发展

一、引言 在数字化浪潮下&#xff0c;智能硬件蓬勃发展&#xff0c;从智能家居到工业物联网&#xff0c;深刻改变人们的生活与工作。音视频通讯作为智能硬件交互与协同的核心&#xff0c;重要性不言而喻。但嵌入式设备硬件资源受限&#xff0c;传统音视频方案集成困难。EasyRT…...

Day19 常见的特征筛选算法

常见的特征筛选算法 1. 方差筛选 原理 &#xff1a;方差衡量的是数据的离散程度。在特征筛选中&#xff0c;如果某个特征的方差很小&#xff0c;说明该特征在不同样本上的值差异不大&#xff0c;那么它对模型的区分能力可能很弱。方差筛选就是通过设定一个方差阈值&#xff0…...

如何使用极狐GitLab 软件包仓库功能托管 terraform?

极狐GitLab 是 GitLab 在中国的发行版&#xff0c;关于中文参考文档和资料有&#xff1a; 极狐GitLab 中文文档极狐GitLab 中文论坛极狐GitLab 官网 Terraform 模块库 (BASIC ALL) 基础设施仓库和 Terraform 模块仓库合并到单个 Terraform 模块仓库功能引入于极狐GitLab 15.1…...

15前端项目----用户信息/导航守卫

登录/注册 持久存储用户信息问题 退出登录导航守卫解决问题 持久存储用户信息 本地存储&#xff1a;&#xff08;在actions中请求成功时&#xff09; 添加localStorage.setItem(token,result.data.token);获取存储&#xff1a;&#xff08;在user仓库中&#xff0c;state中tok…...