【案例35】销售订单公式问题导致系统宕机
问题现象
经过顾问反馈,发现系统现在出现卡顿,NCC一直在转圈。
问题分析
远程排查,发现在服务器从机上defalut-7发生了内存溢出,宕机。
生成了宕机日志。分析结果如下:
销售订单相关操作,vo太多了导致内存占用过多。
使用MAT抓取相关线程信息
at java.util.regex.Pattern$BmpCharProperty.match(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z (Pattern.java:3799)at java.util.regex.Pattern$Curly.match(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z (Pattern.java:4229)at java.util.regex.Pattern$GroupHead.match(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z (Pattern.java:4660)at java.util.regex.Pattern$Branch.match(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z (Pattern.java:4606)at java.util.regex.Pattern$BranchConn.match(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z (Pattern.java:4570)at java.util.regex.Pattern$GroupTail.match(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z (Pattern.java:4719)at java.util.regex.Pattern$Curly.match0(Ljava/util/regex/Matcher;IILjava/lang/CharSequence;)Z (Pattern.java:4281)at java.util.regex.Pattern$Curly.match(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z (Pattern.java:4236)at java.util.regex.Pattern$GroupHead.match(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z (Pattern.java:4660)... ..nccloud.web.so.saleorder.action.SaleOrderBillReferQueryFor30.doAction(Lnccloud/framework/web/container/IRequest;)Ljava/lang/Object; (SaleOrderBillReferQueryFor30.java:62)at nccloud.framework.web.action.excutor.CommonActionExcutor.excute(Ljava/lang/Object;Lnccloud/framework/web/container/IHttpOperator;)Ljava/lang/Object; (CommonActionExcutor.java:18)at nccloud.framework.web.action.entry.ActionExcutor.excute(Ljava/lang/Object;Lnccloud/framework/web/container/IHttpOperator;)Ljava/lang/Object; (ActionExcutor.java:93)at nccloud.framework.web.action.entry.Dispatcher.excute(Lnccloud/framework/web/container/IHttpOperator;)Lnccloud/framework/web/action/entry/Result; (Dispatcher.java:84)at nccloud.framework.web.action.entry.Dispatcher.doAction(Lnccloud/framework/web/container/IHttpOperator;)V (Dispatcher.java:41)at nccloud.framework.web.action.entry.EntryController.doPost(Ljavax/servlet/http/HttpServletRequ... ...
解决建议
应该是在查询销售订单,表体量太大,又走了公式,显示公式:handleBodyLoadFormula。目前看是显示公式导致的。
是订单参照订单时,订单表体存在很多数据,但是又执行大量显示公式导致,建议转单模板
别加显示公式,会有效率问题
nccloud.framework.web.convert.formula.AbstractFormulaHandler.getBodyResult(Lnccloud/framework/web/ui/model/row/Row;[Lnccloud/framework/web/ui/model/row/Row;Ljava/lang/String;Ljava/util/Map;)Ljava/util/Map; (AbstractFormulaHandler.java:745)
相关文章:

【案例35】销售订单公式问题导致系统宕机
问题现象 经过顾问反馈,发现系统现在出现卡顿,NCC一直在转圈。 问题分析 远程排查,发现在服务器从机上defalut-7发生了内存溢出,宕机。 生成了宕机日志。分析结果如下: 销售订单相关操作,vo太多了导致…...
编程-设计模式 4:建造者模式
设计模式 4:建造者模式 定义与目的 定义:建造者模式将一个复杂对象的构建与其表示分离,使得同样的构建过程可以创建不同的表示。目的:该模式主要用于创建复杂对象时,这些对象的创建过程可能涉及多个步骤,…...

百度文心一言API调用,千帆大模型获取API Key和API Secret图解
百度文心一言大模型调用教程,获取文心一言API Key和API Secret的方法,码笔记mabiji.com告诉大家在百度智能云的千帆大模型平台创建应用,即可获取文心一言的API Key和API Secret,详细流程如下: 1、在百度智能云的千帆大…...

kafka下载|安装
1、下载kafka https://kafka.apache.org/downloads 2、安装kafka 解压下载的kafka安装包即可 tar -xvf kafka_2.13-3.7.0.tgz -C /usr/local/3、查看kafka目录 bin目录:存放了脚本 config目录:主要存放了配置文件...
贪心算法part03
134 加油站 在一条环路上有 N 个加油站,其中第 i 个加油站有汽油 gas[i] 升。 你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。 如果你可以绕环路行…...

以树莓集团的视角:探索AI技术如何重塑数字媒体产业发展
在科技日新月异的今天,AI技术如同一股不可阻挡的潮流,正深刻改变着我们的世界,尤其是数字媒体产业发展。作为数字产业生态链的杰出建设者,树莓集团始终站在时代前沿,积极探索AI技术如何为数字媒体产业注入新活力。 在树…...
package.json的 和 的区别,以及|| 和 | 的区别
在 package.json 文件中的 scripts 字段里,&& 和 & 用于连接不同的命令,它们的区别在于命令执行的方式和效果: &&: 用于串联两个命令,第一个命令成功(退出码为 0)后&#x…...

Wireshark_DNS_v7.0
Wireshark_DNS_v7.0 一、 nslookup 前置 nslookup 是一个网络命令行工具,用于查询域名系统(DNS)中的域名解析记录。通过使用 nslookup,你可以获取某个域名的IP地址,或者获取与某个IP地址关联的域名信息。 查看域名…...
阿里云的CentOS系统上安装Docker
在阿里云的CentOS系统上安装Docker的详细步骤如下: 一、前置条件 确保系统内核版本:Docker要求CentOS系统的内核版本高于3.10。你可以通过执行uname -r命令来查看当前系统的内核版本。卸载旧版本的Docker(如果已安装)࿱…...
力扣面试经典100题
进阶,其他解法 数组 88. 合并两个有序数组 - 力扣(LeetCode) 1、按非递减顺序合并两个数组 从末尾开始,用while分没到两个数组头,到第一个数组头,到第二个数组头三种情况 class Solution { public:voi…...
python打怪练习
1. 求一个数的幂值 def mi(a, b):c afor i in range(b-1):a a * creturn aprint(mi(2, 4))2. 输出斐波那契数列 def feibonaqi(n):l []a 1b 1for i in range(n):l.append(a)l.append(b)a b ab a bprint(l)feibonaqi(5)3. 输出特定字典数据 keys [name, old, score…...

excel下载模板,0KB或者乱码问题
Sptingboot项目 — maven打包,云效,docker,k8s 场景 — 导出excel模板 问题 1.乱码 2.下载为0KB,打开没有数据 模板内容 测试代码 测试方法 方法过程结果问题原因将文件直接放到服务器使用接口下载数据正常,排除文件问题排…...

JDBC连接Mysql数据库超详细讲解
JDBC连接Mysql数据库 如何导入驱动jar包 进入mysql官网 – https://www.mysql.com/ 点击下载找到方框内选项 点击 在项目文件夹创建lib文件 , 将下载好的驱动器导入 , 再添加到项目即可 步骤一:注册JDBC驱动 在Java中,要与数据库进行交互&…...

ArcGIS基础:自定义创建点线面等样式符号以方便使用
有时,使用ArcGIS自带的符号样式库无法满足我们使用要求,还需要进行调整,可能会浪费一些时间,那么自己新建一些样式符号备用, 需要的时候直接使用,会节省很多时间,大家学会之后,对学…...

蔚来2025届全球校招笔试/测评通关攻略北森测评题库更新了!
蔚来2025届全球校园招聘笔试/测评攻略 尊敬的各位考生,蔚来汽车2025届全球校园招聘笔试/测评环节即将开启。为了帮助您更好地准备并顺利通过这一环节,我们特此提供以下详细攻略。 一、考前准备 确认考试时间:请务必在截止日期前完成考试&am…...
如何在linux系统上部署Redis
<1>简介 Redis 全称 Remote Dictionary Server(远程字典服务器),是一个高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一,也被人们称为数据结构服务…...
操作系统开发行业的市场需求分析
操作系统作为计算机软件生态的核心,其开发不仅关乎技术的深度与广度,更与市场需求紧密相连。随着技术的不断进步和各行各业对数字化转型的迫切需求,操作系统开发行业面临着日益复杂且多样化的市场需求。以下从基础功能需求、技术创新需求、行…...
SpringMVC 的 拦截器
Spring MVC 提供了一套拦截器(Interceptor)机制,主要用于处理 Web 请求到达控制器之前或响应离开控制器之后执行一些操作。拦截器可以用于执行预处理(如验证用户身份)和后处理(如清理资源或修改响应&#x…...

Redisson可重入锁原理(基于黑马视频总结,保姆级)
上一篇文章我们基于redis的set nx ex 命令以及Lua脚本实现了基本的分布式锁,但是还存在一下几点问题。于是又引出了redisson。 为什么基于SETNX的分布式锁无法实现可重入 先在method1中获取锁,获取成功后又调用method2,而method2内部也会获取…...

Ubuntu 安装 Watt-Toolkit
一、下载 Watt-Toolkit 下载Watt-Toolkithttps://steampp.net/download 二、设置 Watt-Toolkit 打开 Watt-Toolkit,点击 “网络加速→加速设置,打开证书文件夹” ,当前证书路径为:/home/yammie/.local/share/Steam/Plugins/Acc…...
KubeSphere 容器平台高可用:环境搭建与可视化操作指南
Linux_k8s篇 欢迎来到Linux的世界,看笔记好好学多敲多打,每个人都是大神! 题目:KubeSphere 容器平台高可用:环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...

大数据学习栈记——Neo4j的安装与使用
本文介绍图数据库Neofj的安装与使用,操作系统:Ubuntu24.04,Neofj版本:2025.04.0。 Apt安装 Neofj可以进行官网安装:Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...
【杂谈】-递归进化:人工智能的自我改进与监管挑战
递归进化:人工智能的自我改进与监管挑战 文章目录 递归进化:人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管?3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
第25节 Node.js 断言测试
Node.js的assert模块主要用于编写程序的单元测试时使用,通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试,通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...
Java线上CPU飙高问题排查全指南
一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...

华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...