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

Oracle19C低版本一天遭遇两BUG(ORA-04031/ORA-600)

昨天帮朋友看一个系统异常卡顿的案例,在这里分享给大家

环境:Exadata X8M  数据库版本19.11

1.系统报错信息

表象为系统卡顿,页面无法刷出,登陆到主机上看到节点1 系统等待存在大量的 cursor: pin S wait on X等待

查看两个节点的alert log 看到有大量的ORA-04031报错 

2025-04-15T14:43:53.522183+08:00
Errors in file /u01/app/oracle/diag/rdbms/test1/test11/trace/test11_m000_342669.trc:
ORA-00604: error occurred at recursive SQL level 1
ORA-01000: maximum open cursors exceeded
2025-04-15T14:44:50.515707+08:00
DDE: Problem Key 'ORA 4031' was completely flood controlled (0x6)
Further messages for this problem key will be suppressed for up to 10 minutes
2025-04-15T14:46:29.968518+08:00
Errors in file /u01/app/oracle/diag/rdbms/test1/test11/trace/test11_mz08_287162.trc:
ORA-04031: unable to allocate 12312 bytes of shared memory ("shared pool","unknown object","KKSSP^2798","kglseshtTable")
2025-04-15T14:46:30.005517+08:00
Process MZ08 died, see its trace filetrace file信息
Trace file /u01/app/oracle/diag/rdbms/test1/test11/trace/test11_mz08_287162.trc
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.11.0.0.0
*** 2025-04-15T14:46:29.968405+08:00 (CDB$ROOT(1))
<error barrier> at 0x7ffceea153e8 placed ksv.c@7147
ORA-04031: unable to allocate 12312 bytes of shared memory ("shared pool","unknown object","KKSSP^2798","kglseshtTable")
OPIRIP: Uncaught error 447. Error stack:*** 2025-04-15T14:46:29.969405+08:00
ORA-00447: fatal error in background process
ORA-04031: unable to allocate 12312 bytes of shared memory ("shared pool","unknown object","KKSSP^2798","kglseshtTable")

MOS新加AI搜索能力

ORA-04031涉及到的bug非常多,遇到这类问题 优先查MOS,这里简单介绍一下MOS新推出的 AI搜索能力,可以根据你提供的报错 比较精准的给出搜索结果,并根据相关性将引用的文档列出来,这个功能非常好

根据AI的提示 简单翻译一下

请注意:服务提供的信息可能存在不准确之处,应进行独立验证。本解答适用于:Oracle Database - Enterprise Edition - 版本19.3.0.0.0至19.14.0.0.0

错误消息ORA-04031: unable to allocate 12312 bytes of shared memory ("shared pool","unknown object","KKSSP^2798","kglseshtTable")表明数据库无法从共享池分配所需的共享内存。

根据《数据库错误消息》文档,该错误的成因是所需共享内存超过了当前可用量。

解决方案如下:

  1. 增加初始化参数SGA_TARGET、MEMORY_SIZE或MEMORY_TARGET的值

  2. 若无法增加上述参数,则降低DB_CACHE_SIZE的值(如已设置)

  3. 若未使用SGA_TARGET、MEMORY_SIZE或MEMORY_TARGET,则增加对应内存池的大小:

    • 共享池不足时增加SHARED_POOL_SIZE

    • IMC堆不足时增加INMEMORY_SIZE

另一份相关文档《ORA-04031: unable to allocate 12312 bytes of shared memory ("shared pool","unknown object","KKSSP^1489","kglseshtTable")》提供了更具体的错误分析。

该错误由产品缺陷引起,已在未公开的Bug 33647820中记录。解决方案为:

  1. 应用19.15或更高版本的补丁集(该问题已标记为修复)

  2. 或应用适用于您版本和平台的补丁33647820(如存在)

检查补丁冲突请使用My Oracle Support (MOS)的Patch Planner工具。若对应平台和版本无可用补丁,请联系Oracle技术支持申请修复。

2.原因

很明显这个报错是因为触发了一个为 unpublished 的Bug ,根据文档 ORA-04031: unable to allocate 12312 bytes of shared memory ("shared pool","unknown object","KKSSP^1489","kglseshtTable") (Doc ID 2923103.1)

这个报错和文档中的描述完全一致,大概猜测是数据库实例运行太久 造成的share pool imbalance,该问题在19.15被解决,19.15之前版本BUG还是挺多的,如果有条件可以考虑升级到19.20+

话说Exadata稳定性还是非常强大的,这台机器从入场至今1387天(接近四年了),没有重启过,出问题这个实例也没有重启过, 如果不是这次遭遇BUG 应该还能跑很久。

3.解决方案

根据以上MOS的信息,有一下几种处理方式

紧急处理方式,强制刷新share pool

alter system flush shared_pool;

或者重启数据库 很多内存相关的bug可以通过重启数据库来解决,毕竟打补丁现在来不及;我这里选择的处理方案是轮流重启两个节点;

然而因为这个实例已经运行了太久 shutdown用了好长时间,并有大量pid 都需要手动kill,一下报出几百个PID,还好现在AI比较强大直接将这部分log丢给deepseek,让它把pid筛选出来就好了。

PDBPRO(6):Active process 279643 user 'grid' program 'oracle@test.com.cn', waiting for 'SQL*Net message from client'
PDBPRO(6):
PDBPRO(6):Active process 124660 user 'grid' program 'oracle@test.com.cn', waiting for 'SQL*Net message from client'
PDBPRO(6):
PDBPRO(6):Active process 246421 user 'grid' program 'oracle@test.com.cn', waiting for 'SQL*Net message from client'
PDBPRO(6):
PDBPRO(6):Active process 224818 user 'grid' program 'oracle@test.com.cn', waiting for 'read by other session'
PDBPRO(6):
PDBPRO(6):Active process 124650 user 'grid' program 'oracle@test.com.cn', waiting for 'SQL*Net message from client'
PDBPRO(6):

4.重启再遇到BUG

节点2重启正常,但是在节点1重启时发现只能mount 无法OPEN 关键部分报错如下

ALTER DATABASE OPEN /* db agent *//* {0:4:346} */2025-04-15T19:47:52.586367+08:00
CTWR started with pid=89, OS id=33744
Errors in file /u01/app/oracle/diag/rdbms/test1/test11/trace/test11_ctwr_33744.trc  (incident=246935) (PDBNAME=CDB$ROOT):
ORA-04031: unable to allocate 52011112 bytes of shared memory ("large pool","unknown object","large pool","CTWR dba buffer")
Incident details in: /u01/app/oracle/diag/rdbms/test1/test11/incident/incdir_246935/test11_ctwr_33744_i246935.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
2025-04-15T19:47:53.513579+08:00
ORA-04031 heap dump being written to trace file /u01/app/oracle/diag/rdbms/test1/test11/incident/incdir_246935/test11_ctwr_33744_i246935.trc
2025-04-15T19:47:54.106979+08:00
Errors in file /u01/app/oracle/diag/rdbms/test1/test11/trace/test11_ctwr_33744.trc  (incident=246936) (PDBNAME=CDB$ROOT):
ORA-00600: internal error code, arguments: [krcpasb_initial_alloc_failure], [3250176], [], [], [], [], [], [], [], [], [], []
ORA-04031: unable to allocate 52011112 bytes of shared memory ("large pool","unknown object","large pool","CTWR dba buffer")
Incident details in: /u01/app/oracle/diag/rdbms/test1/test11/incident/incdir_246936/test11_ctwr_33744_i246936.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
2025-04-15T19:47:54.598420+08:00
Errors in file /u01/app/oracle/diag/rdbms/test1/test11/trace/test11_ctwr_33744.trc:
ORA-00600: internal error code, arguments: [krcpasb_initial_alloc_failure], [3250176], [], [], [], [], [], [], [], [], [], []
ORA-04031: unable to allocate 52011112 bytes of shared memory ("large pool","unknown object","large pool","CTWR dba buffer")
2025-04-15T19:47:54.598589+08:00
The change tracking error 600.
2025-04-15T19:47:54.598742+08:00
Stopping background process CTWR
2025-04-15T19:47:54.599120+08:00
Errors in file /u01/app/oracle/diag/rdbms/test1/test11/trace/test11_ctwr_33744.trc:
ORA-00600: internal error code, arguments: [krcpasb_initial_alloc_failure], [3250176], [], [], [], [], [], [], [], [], [], []
ORA-04031: unable to allocate 52011112 bytes of shared memory ("large pool","unknown object","large pool","CTWR dba buffer")
2025-04-15T19:47:54.600494+08:00
Dumping diagnostic data in directory=[cdmp_20250415194754], requested by (instance=1, osid=33744 (CTWR)), summary=[incident=246936].
Errors in file /u01/app/oracle/diag/rdbms/test1/test11/trace/test11_ctwr_33744.trc  (incident=246937) (PDBNAME=CDB$ROOT):
ORA-487 [] [] [] [] [] [] [] [] [] [] [] []
Incident details in: /u01/app/oracle/diag/rdbms/test1/test11/incident/incdir_246937/test11_ctwr_33744_i246937.trc

错误发生在启动 CTWR(Change Tracking Writer)进程时,最终导致 实例终止(instance crash)

 4.1 CTWR 进程启动失败

CTWR 是 Change Tracking Writer,用于实现 增量备份变更跟踪(Block Change Tracking) 功能。它启动时尝试在 large pool 中分配大块内存失败,引发了 ORA-4031:

"large pool", "CTWR dba buffer"

4.2 ORA-00600 + ORA-4031 的组合说明这是一个严重的系统级错误 

  • ORA-00600 [krcpasb_initial_alloc_failure] 是 内部内存分配失败

  • 错误位置在 Oracle kernel 模块 krcp* 系列,属于 change tracking 内部模块

  • 后续的 进程中止、系统状态转储、实例终止 都是级联故障结果

4.3是否命中 Oracle 官方 Bug?

查MOS 很快找到和这个报错和BUG  Bug 32428097 高度一致!

Bug 32428097 - ORA-600 [krcpasb_initial_alloc_failure] during CTWR startup

说明

  • Oracle 19.x 在使用 change tracking 时,CTWR 在启动期间分配内存失败,触发 ORA-04031 + ORA-00600 + 实例崩溃。

  • 这是 Oracle 确认的回归问题(Regression Bug)在19.13修复。

  • 常见于:

    • 大量数据变更(如恢复、测试环境还原)

    • large pool 不足

    • 某些版本升级后首次启用 change tracking

4.4解决方案

暂时关闭block change track

ALTER DATABASE DISABLE BLOCK CHANGE TRACKING;

5.总结

截止至2025年4月16日 Oracle19C已经更新至19.27,我认为至少在未来五年内,19c仍然会是主力版本;当然拉如果没有遭遇BUG,理论上可以不打补丁的,但是为了系统的稳定,仍然建议将19C升级至19.20+ (保守点19.15+)

附录oracle各版本支持时间线。

参考文档:

ORA-04031: unable to allocate 12312 bytes of shared memory ("shared pool","unknown object","KKSSP^1489","kglseshtTable") (Doc ID 2923103.1)

Bug 32428097 - BCT: CTWR crashes during "_bct_public_dba_buffer_size" reset with ORA-00600 [krcpasb_initial_alloc_failure] & ORA-4031 (Doc ID 32428097.8)

Release Schedule of Current Database Releases (Doc ID 742060.1)

相关文章:

Oracle19C低版本一天遭遇两BUG(ORA-04031/ORA-600)

昨天帮朋友看一个系统异常卡顿的案例&#xff0c;在这里分享给大家 环境&#xff1a;Exadata X8M 数据库版本19.11 1.系统报错信息 表象为系统卡顿&#xff0c;页面无法刷出&#xff0c;登陆到主机上看到节点1 系统等待存在大量的 cursor: pin S wait on X等待 查看两个节…...

车机系统夏令时设置功能的说明

车机系统夏令时设置功能的说明 基本原理&#xff0c;夏令时&#xff0c;也就daylight saving time。据说古时候&#xff0c;电费比较贵&#xff0c;为了多采用白天自然光照明&#xff0c;通过行政的方式&#xff0c;调节上班时间。使大家能充分使用白天的时间干活&#xff0c;…...

DeepSeek+大数据分析快速应用落地

一、环境准备 1、准备一个 hive 的环境&#xff0c;并可以进行远程连接 2、环境中安装有 sqoop 和 mysql 3、DeepSeek 我使用的是 《问小白》 注册地址&#xff1a;打开问小白&#xff0c;填入我的分享码【1VYXOI】使用满血DeepSeek R1&#xff0c;零延迟、不卡、不限次、不…...

web前端开发:CSS的常用选择器

CSS常用选择器 CSS选择器是用于精准定位HTML元素并对其应用样式的核心工具。它的作用类似于“筛选器”&#xff0c;通过特定规则匹配文档中的元素&#xff0c;从而实现样式控制。 核心作用 定位元素 通过元素名称、类名、ID、属性等条件&#xff0c;快速找到需要样式化的目标元…...

Mathematica 中,将含有小数的表达式转换为整数或分数形式

具体方法和示例&#xff1a; 1. 使用 Rationalize 函数 Rationalize[x] 将小数 x 转换为最接近的有理数&#xff08;分数形式&#xff09;&#xff0c;可指定精度容忍度。 示例&#xff1a; Rationalize[0.25] (* 输出: 1/4 *) Rationalize[3.14159, 0.001] (* 输出:…...

在 Ubuntu 下通过 Docker 部署 Mastodon 服务器的详细教程

大家好&#xff01;今天我们来聊聊如何在 Ubuntu 系统上通过 Docker 部署 Mastodon 服务器。Mastodon 是一个开源的社交网络平台&#xff0c;类似于 Twitter&#xff0c;但更注重隐私和去中心化。Docker 则是一个非常流行的容器化平台&#xff0c;能够让我们轻松地打包、分发和…...

JavaScript基础-01(笔记)

前期&#xff1a;js变量 数据类型 数据类型检测 类型转换 数据类型 //// 基本数据类型 存放到栈// a.Number 数字类型(包含整数 小数)var num1var num1.23443var num2222// NaN 非数字类型或者不能转为数字&#xff08;例&#xff1a;1,"1"&#xff0c;"1233…...

【C语言基础】C++ 中的 `vector` 及其 C 语言实现详解

一、C 中的 vector&#xff1a;动态数组的核心特性 1. 基本概念 vector 是 C 标准模板库&#xff08;STL&#xff09;中的动态数组容器&#xff0c;支持自动扩容、高效元素访问和丰富的操作接口。其核心特性包括&#xff1a; 动态内存管理&#xff1a;自动调整容量&#xff0…...

记录待办事项的便签软件有没有推荐的?

在快节奏的现代生活中&#xff0c;我们每天都要处理大量的工作任务和生活琐事&#xff0c;稍有不慎就可能遗漏重要事项。你是否经常遇到这样的情况&#xff1a;明明记得有件事要做&#xff0c;却怎么也想不起来是什么&#xff1b;或者手头同时有好几项任务&#xff0c;却不知道…...

华为OD机试真题——硬件产品销售方案(2025A卷:100分)Java/python/JavaScript/C++/C语言/GO六种最佳实现

2025 A卷 100分 题型 本文涵盖详细的问题分析、解题思路、代码实现、代码详解、测试用例以及综合分析&#xff1b; 并提供Java、python、JavaScript、C、C语言、GO六种语言的最佳实现方式&#xff01; 华为OD机试真题《硬件产品销售方案》&#xff1a; 目录 题目名称&#xff1…...

鸿蒙应用元服务开发-Account Kit未成年人模式订阅和处理用户信息变更

一、概述 通过订阅用户信息变更&#xff0c;您可以接收有关用户及其账户的重要更新。当用户取消元服务的授权信息、注销华为账号时&#xff0c;华为账号服务器会发送通知到元服务&#xff0c;元服务可以根据通知消息进行自身业务处理。 二、用户信息变更事件介绍 三、订阅用…...

优化 Dockerfile 性能之实践(Practice of Optimizing Dockerfile Performance)

优化 Dockerfile 性能之实践 构建 Docker 镜像时&#xff0c;Dockerfile 的性能会显著影响构建过程的效率。经过优化的 Dockerfile 可以缩短构建时间、最小化镜像大小并提高整体容器性能。在本文中&#xff0c;我们将探讨优化 Dockerfile 性能的最佳实践。 尽量减少层数 影响…...

OpenShift介绍,跟 Kubernetes ,Docker关系

1. OpenShift 简介 OpenShift是一个开源项目,基于主流的容器技术Docker及容器编排引擎Kubernetes构建。可以基于OpenShift构建属于自己的容器云平台。OpenShift的开源社区版本叫OpenShift Origin,现在叫OKD。 OpenShift 项目主页:https://www.okd.io/。OpenShift GitHub仓库…...

Go:包和 go 工具

引言 通过对关联特性分类&#xff0c;组成便于理解和修改的单元&#xff0c;使包与程序其他包保持独立&#xff0c;助力大型程序的设计与维护 。模块化让包可在不同项目共享、复用、发布及全球范围使用。 每个包定义不同命名空间作为标识符&#xff0c;关联具体包&#xff0c…...

GIS开发笔记(5)结合osg及osgEarth实现虚线环形区域绘制

一、实现效果&#xff1a;输入中点坐标点、内圆半径、外圆半径&#xff0c;绘制坐标点所在高度的水平面的两个圆形形成环形区域。 二、实现原理&#xff1a; 创建中心点所在平面的圆形几何体&#xff0c;将其分别挂接到同一个节点上&#xff0c;再将该节点挂接到用户绘制组节…...

天线静电防护:NRESDTLC5V0D8B

一. 物联网天线的使用环境 1.1 联网天线广泛应用于智能家居领域&#xff0c;比如智能门锁、智能摄像头等设备中&#xff0c;通过天线实现设备与家庭网络的连接&#xff0c;用户可以远程控制和监控家居设备。以智能摄像头为例&#xff0c;它通过天线将拍摄的画面实时传输到用户…...

Linux进程相关选择题及解析

1. 关于Linux进程创建,以下说法正确的是? A. fork()函数调用后,子进程从父进程的fork()之后开始执行 B. fork()函数返回两次,父进程返回子进程PID,子进程返回0[10][11] C. exec函数族会替换当前进程的代码段,但保留数据段和堆栈 D. wait()函数只能等待直接子进程退出 答…...

Day(22)--网络编程习题

习题 以下是这些 TCP 通信练习题的 Java 代码实现及解析&#xff1a; TCP 通信练习 1 - 多发多收 客户端&#xff08;Client1.java&#xff09; java import java.io.IOException; import java.io.OutputStream; import java.net.Socket; ​ public class Client1 {public…...

Kubernetes 节点摘除指南

目录 一、安全摘除节点的标准流程 1. 确认节点名称及状态 2. 标记节点为不可调度 3. 排空&#xff08;Drain&#xff09;节点 4. 删除节点 二、验证节点是否成功摘除 1. 检查节点列表 2. 检查节点详细信息 3. 验证 Pod 状态 三、彻底清理节点&#xff08;可选&#xf…...

SM4密码算法的CPA攻击技术

SM4算法简介 可参见博文 SM4分组密码算法研究。 SM4密码算法的CPA攻击技术 相关功耗攻击(CPA)是侧信道功耗分析攻击中较为常见的攻击方法之一,攻击者利用密码算法执行过程中,在侧信道泄露的信息(如时序、能量、缓存等)和通信信道的消息(如明文、私钥等)进行测试,通过…...

Golang|KVBitcask

文章目录 初识KVbitcask论文详解 初识KV bitcask论文详解 论文地址&#xff1a;https://riak.com/assets/bitcask-intro.pdf理想的存储引擎&#xff0c;应该满足下面一些特点&#xff1a;...

【Python进阶】元组:不可变序列的十大核心应用

目录 前言&#xff1a;技术背景与价值当前技术痛点解决方案概述目标读者说明 一、技术原理剖析核心概念图解核心作用讲解关键技术模块技术选型对比 二、实战演示环境配置要求核心代码实现&#xff08;10个案例&#xff09;案例1&#xff1a;基础创建与访问案例2&#xff1a;解包…...

centos安装libheif

参考 解决docker: Error response from daemon: Get “https://registry-1.docker.io/v2/“:连接超时问题_error response from daemon :get-CSDN博客 HEIF编解码器安装 - navyum - 博客园 ​​​​​​https://github.com/strukturag/libheif #升级gcc yum install centos…...

初步认识Model Context Protocol (MCP) Java SDK

1. Maven如何下载MCP Java SDK 基础配置(核心模块) 在您的pom.xml文件中添加以下依赖: <dependencyManagement> <dependencies> <dependency> <groupId>io.modelcontextprotocol.sdk</groupId> <artifactI…...

第三章 爬虫提速、selenium模块、requests模块进阶(终)

目录 一.requests进阶 &#xff08;一&#xff09;处理cookie &#xff08;二&#xff09;防盗链 &#xff08;三&#xff09;代理 二.爬虫提速 &#xff08;一&#xff09;线程池和进程池 &#xff08;二&#xff09;协程 &#xff08;三&#xff09;异步http请求-aio…...

unity使用内建组件给刚体增加重力

2019年3月9日11:10:24 unity开发中&#xff0c;有时候发现刚体上的重力不能满足我们的需要&#xff0c;可以通过使用内建组件Constant Force来增加重力&#xff1a; 在游戏对象上。请按照以下操作&#xff1a; 为Player添加一个名为Constant Force组件&#xff0c;选择Player在…...

Java开发中的设计模式之观察者模式详细讲解

观察者模式&#xff08;Observer Pattern&#xff09;是一种行为型设计模式&#xff0c;它定义了对象之间的一种一对多的依赖关系。当一个对象的状态发生改变时&#xff0c;所有依赖于它的对象都会自动收到通知并更新。这种模式在Java开发中非常常见&#xff0c;尤其是在事件驱…...

【学习笔记】计算机网络(九)—— 无线网络和移动网络

第9章 无线网络和移动网络 文章目录 第9章 无线网络和移动网络9.1 无线局域网WLAN9.1.1 无线局域网的组成9.1.2 802.11局域网的物理层9.1.3 802.11局域网的MAC层协议CSMA 协议CSMA/CD 协议 - 总线型 - 半双工CSMA/CA 协议 9.1.4 802.11局域网的MAC帧 9.2 无线个人区域网WPAN9.3…...

一个基于Django的写字楼管理系统实现方案

一个基于Django的写字楼管理系统实现方案 用户现在需要我用Django来编写一个写字楼管理系统的Web版本&#xff0c;要求包括增删改查写字楼的HTML页面&#xff0c;视频管理功能&#xff0c;本地化部署&#xff0c;以及人员权限管理&#xff0c;包含完整的代码结构和功能实现&am…...

C++面试考点:类(class)

1、类的定义 C中的类提供了面向对象编程、继承与多态的机制。其构成包括成员&#xff08;各种自定义数据&#xff09;、行为&#xff08;定义的函数操作&#xff09;、封装&#xff08;private、public、protected&#xff09;。核心是了解类的继承机制&#xff0c;以及各种封装…...

ThreadPoolExecutor 多线程用requests请求一个地址的时候为什么会报错,而多进程用requests请求一个地址的时候不会报错,为什么?

网络请求行为 多线程&#xff1a;requests 库底层依赖 urllib3&#xff0c;而 urllib3 使用连接池管理网络请求。在多线程环境中&#xff0c;连接池可能会因为线程间的竞争导致连接泄漏或超时。 多进程&#xff1a;每个进程独立管理自己的连接池&#xff0c;因此不会出现线程间…...

数据库脱裤

假设你已经getshell 找到mysql账号密码。 网站要连接mysql&#xff0c;就需要把mysql的账号密码保存在一个php文件中&#xff0c;类似config.php、common.inc.php等&#xff0c;在shell中&#xff0c;读取这些文件&#xff0c;找到其中信息即可 下面是一些常见平台的配置文…...

十二,<FastApi>中间件

什么是中间件? "中间件"是一个函数,它在每个请求被特定的路径操作处理之前,以及在每个响应之后工作. 代码示例: from fastapi import FastAPI, Response from fastapi import Request import uvicornapp FastAPI()app.middleware("http") async def m2…...

欢迎使用Markdown编辑器

使用Markdown编辑器 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题&#xff0c;有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个注…...

RabbitMQ架构原理及消息分发机制

RabbitMQ架构原理及消息分发机制 在现代分布式系统中&#xff0c;消息队列是不可或缺的组件之一。它不仅能够解耦系统模块&#xff0c;还能实现异步通信和削峰填谷。在众多消息队列中&#xff0c;RabbitMQ 因其高并发、高可靠性和丰富的功能而备受青睐。本文将从 RabbitMQ 的基…...

智能麻将出牌组件

开篇引言​ 麻将作为一款风靡全球的策略性游戏&#xff0c;其复杂的规则和多变的牌局给玩家带来了无尽乐趣。在数字化时代&#xff0c;运用编程技术为麻将游戏赋予智能&#xff0c;实现自动出牌功能&#xff0c;不仅能提升玩家体验&#xff0c;还能深入探索算法在博弈游戏中的…...

python脚本补充

本文是对实用的 Python 小脚本_python写脚本-CSDN博客的一点补充。对简单脚本的一些操作上的优化。 ###Utilities ### ###重命名文件名 import os import tkinter as tk from tkinter import filedialog, simpledialog, messageboxdef batch_rename():# 弹出文件夹选择对话框d…...

【经验记录贴】活用shell,提高工作效率

背景 最近在做测试的时候&#xff0c;需要手动kill服务的进程&#xff0c;然后通过命令重启服务&#xff0c;再进行测试。每次重启都会涉及到下面三个命令的执行&#xff1a; 1&#xff09;检索进程ID $ ps -elf | grep programname root 1123 112 1234 0 0 0 0:00…...

出现 ERR_CERT_COMMON_NAME_INVALID | 301 302 重定向的解决方法

目录 前言1. 问题所示2. 原理分析3. 解决方法前言 🤟 找工作,来万码优才:👉 #小程序://万码优才/r6rqmzDaXpYkJZF 爬虫神器,无代码爬取,就来:bright.cn 1. 问题所示 执行代码时,出现如下提示: GET https://xxxx/admin-api/system...

解决本地浏览器访问服务器端语音识别项目显示“麦克风未授权”的问题

解决本地浏览器访问服务器端语音识别项目显示“麦克风未授权”的问题 在 chrome://flags 启用特殊权限&#xff08;不推荐长期启用&#xff09; 在浏览器地址栏输入&#xff1a; chrome://flags然后搜索&#xff1a; Insecure origins treated as secure 找到类似项&#xff…...

【数论】线性筛质数

线性筛质数 在之前的一篇筛质数的文章中只解释了埃式筛质数的方法&#xff0c;没有解释线性筛质数的方法 我们先看一下线性筛质数的代码 【例题】 给定一个正整数 n&#xff0c;请你求出 1∼n 中质数的个数。 输入格式 共一行&#xff0c;包含整数 n。 输出格式 共一行…...

视频孪生重构施工逻辑:智慧工地的数字化升级

当"智慧工地"概念在2017年首次写入《建筑业发展"十三五"规划》时&#xff0c;行业普遍将其等同于摄像头与传感器的简单叠加。十年数字浪潮冲刷下&#xff0c;智慧工地的内涵已发生本质跃迁&#xff1a;从工具层面的信息化改造&#xff0c;进化为基于视频数…...

【Lerobot】加载本地数据LeRobotDataset数据、读取并解析parquet

官方例子&#xff1a;https://github.com/huggingface/lerobot/blob/main/examples/1_load_lerobot_dataset.py https://github.com/NVIDIA/Isaac-GR00T/blob/main/getting_started/LeRobot_compatible_data_schema.md 使用SO100机械臂进行数据采集后&#xff0c;得到如下格式…...

卷积神经网络 CNN 模型介绍

卷积神经网络 CNN 模型介绍 一、经典CNN模型1. LeNet-5&#xff08;基础模型&#xff09;2. AlexNet3. VGGNet&#xff08;VGG16/VGG19&#xff09;4. ResNet&#xff08;残差网络&#xff09; 二、轻量化CNN模型1. MobileNet系列2. EfficientNet3. ShuffleNet 三、改进型CNN模…...

Vue —— 实用的工具函数

目录 响应式数据管理1. toRef 和 torefs2. shallowRef 和 shallowReactive3. markRaw 依赖追踪与副作用1. computed2. watch 和 watchEffect 类型判断与优化1. unref2. isRef 、isReactive 和 isProxy 组件通信与生命周期1. provide 和 inject2. nextTick 高级工具1. useAttrs …...

Langchain + Gemini API调用基本操作

本文参考Langchain中ChatGoogleGenerativeAI的官方文档&#xff0c;在本地的jupyter notebook中运行。 关于API的细节在官方文档最开头给出&#xff1a; 我们在使用时&#xff0c;可以选择model"gemini-2.0-flash-001"或者生成图片的ChatGoogleGenerativeAI(model“…...

软件线上故障复盘报告

软件线上故障复盘报告‌ ‌故障编号‌&#xff1a;INC-2024XXX ‌复盘日期‌&#xff1a;YYYY-MM-DD ‌参与人员‌&#xff1a;研发/运维/测试/产品/客服负责人 一、故障概况 1.1 基础信息 字段内容数据来源故障等级P0/P1/P2&#xff08;参考SLA分级标准&#xff09;运维告警…...

分享:批量提取图片文字并自动命名文件,ocr识别图片指定区域并重命名文件名工具,基于WPF和腾讯OCR识别的接口的视线方案

一、项目背景 在处理大量图片时,常常需要从图片中提取特定区域的文字信息,并依据这些信息对图片进行重命名。例如,在档案管理领域,大量纸质文件被扫描成图片后,需要从图片中提取关键信息(如文件编号、日期等)来重命名图片,以便后续的检索和管理;在电商领域,商家可能…...

SIMULIA-Abaqus有限元分析软件针对汽车行业的解决方案

汽车行业是Abaqus软件的一个重要应用领域&#xff0c;许多知名的汽车企业都是Abaqus的用户&#xff0c;本文为您重点介绍Abaqus针对汽车行业有哪些应用及其解决方案。 Abaqus是一款什么软件&#xff1a; Abaqus公司是世界知名的计算机仿真行业的软件公司&#xff0c;成立于197…...

linux下使用php修改php.ini的session.save_path无效的解决办法

linux下安装php的组合还是php-fpm和nginx&#xff0c;其实已经安装好了&#xff0c;网站已经能够跑起来了&#xff0c;但是遇到后台登录的时候验证码一直不对&#xff0c;看了下报错&#xff0c;session无法存储&#xff0c;于是新增了一个phpinfo文件&#xff0c;使用web查看下…...