【BUG解决】服务器没报警但是应用接口崩了....

最近遇到一个突发问题:服务器没报警但是应用接口崩了…

为其他业务系统提供一个接口,平时好好的,突然就嚷嚷反馈说访问不了了,吓得我赶紧跳起来!
请添加图片描述
正常情况下在系统崩溃前,我会收到很多系统报警,但是这次它悄无声息的出问题,还是挺恐怖的

然后我立马看了下服务器的情况,服务器没有报警,也可以ping通,就是服务接口确实访问不了了
然后,还给我竖了个中指。。。。

好好好,现在都是这么折磨打工人的是吧。
请添加图片描述

在这里插入图片描述

随后我又看了下数据库的使用率,也没打满

在这里插入图片描述

然后随即查看对外提供接口的性能监控情况:除了9点15那会有点慢,其他一切正常,而且这个接口本身调用量不高的,系统完全可以hold住,为什么还是有问题?

于是怀疑是不是9点15那会接口慢了导致的。询问调用方之后,说超时连接时间设置的是5s。那这个接口完全可以在5s内返回。
在这里插入图片描述
在这里插入图片描述
随后我又找调用方拿到了这个日志信息:
RPC框架抛出异常cause: java.util.concurrent.RejectedExecutionException: Biz thread pool of provider has bean exhausted
它的意思是说线程池已经耗尽了,所以导致系统异常了。

目前系统最大设置的线程数量是300,我将配置提升到400,

随后对日志中这个关键词:Biz thread pool of provider has bean exhausted 做监控,之前都是系统CPU、TCP连接、内存、磁盘、以及方法调用时长以及可用率的报警,但是这些报警配置,没办法监控到此情况的发生。于是当系统报线程池满了之后,就需要赶紧调整下配置。

当然线程池的最大线程数也不是能无限增加的,这取决于系统负载能力。最大线程数越大,系统负载也会增大,数据库压力也会越大,如果慢sql较多,很可能数据库马上cpu就打满了,所以关键还是要从代码层面,解决一些长链接的慢sql,长事物。

具体可以参考下这篇:线程池队列已满时会发生什么?如何解决这个问题?

希望我的悲惨经历能给其他人排查问题带来一点思路吧…

请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/125116.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】补充:进程管理之手动控制进程,以及计划任务

目录 一、手动启动进程 1、理解前台启动与后台启动 2、如何完成前台启动后台启动的切换 3、完成并行执行多个任务 4、结束进程 1、kill 2、killall 2、pkill 二、计划任务 1、at一次性计划任务 2、实操 2、周期性计划任务 1、关于设置周期性任务的配置文件以及格式…

使用ffmpeg调用电脑自带的摄像头和扬声器录制音视频

1、打开cmd,执行chcp 65001,修改cmd的编码格式为utf8,避免乱码 2、执行指令ffmpeg -list_devices true -f dshow -i dummy,查看当前window的音频和视频名称 3、打开windows系统的"打开声音设置"–“麦克风隐私设置”–"允许应用访问你…

技术分享 | 测试平台开发-前端开发之数据展示与分析

测试平台的数据展示与分析,我们主要使用开源工具ECharts来进行数据的展示与分析。 ECharts简介与安装 ECharts是一款基于JavaScript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表&#xff…

第七章《搞懂算法:线性回归是怎么回事》笔记

线性回归算法是机器学习算法中最简单的一类,线性回归算法主要用于连续值的预测问题。 7.1 什么是线性回归 这种刻画了不同变量之间关系的模型叫作回归模型,如果这个模型是线性的,则为线性回归模型。 线性回归主要是应用回归分析来确定两种…

EfficientNet 系列网络学习

EfficientNet V1 EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks 增加网络参数的方式有三种:深度、宽度和输入图像的分辨率。探究这三种方式对网络性能的影响,以及如何同时缩放这三种因素是 EifficentNet的主要贡献。 单独…

Centos7开放及查看端口

1、开放端口 firewall-cmd --zonepublic --add-port8888/tcp --permanent # 开放8888端口 firewall-cmd --zonepublic --remove-port8888/tcp --permanent #关闭8888端口 firewall-cmd --reload # 配置立即生效 2、查看防火墙所有开放的端口 firewall-cmd --zonepubl…

什么是数字化管理?产业园区如何进行数字化管理?

工业园区的数字化管理涉及利用技术和数据驱动的工具来优化工业园区环境中的运营、提高效率并改进决策流程。它通常包括使用各种数字技术和数据分析技术来监视、控制和增强公园运营的各个方面。 以下是工业园区数字化管理的一些关键方面以及如何实施: 1.数据收集和…

初识Java 17-4 反射

本笔记参考自: 《On Java 中文版》 接口和类型信息 interface关键字的一个重要目标就是允许程序员隔离组件,减少耦合。但我们可以通过类型信息来绕过接口的隔离,这使得接口不一定能够保证解耦。 为了演示这一实现,我们需要先创建一…

C/C++轻量级并发TCP服务器框架Zinx-游戏服务器开发005:守护进程与进程监控

文章目录 1 守护进程1.1 进程组和会话1.2 会话的相关概念1.3 守护进程的概念1.4 守护线程的特点1.5 守护进程创建的基本步骤1.6 本项目守护进程的实现 2 进程监控2.1 进程监控的实现 1 守护进程 1.1 进程组和会话 进程除了有进程的PID之外还有一个进程组,进程组是…

threejs (二) 相机

正交相机 const camera new THREE.OrthographicCamera(-aspect,aspect,aspect,-aspect,0.1, //进平面1000 //远平面); // 透视相机创建相机辅助线 const cameraHelper new THREE.CameraHelper(this.camera);创建一个透视相机观察正交相机 // 创建透视相机const watchCamera …

【算法与数据结构】39、LeetCode组合总和

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析:这道题当中数字可以多次使用,那么我们在递归语句当中不能直接找下一个candidate的元素&…

两台linux虚拟机之间实现免密登录

主要实现两台虚拟机之间的免密登录,总所周知,虚拟机之间登录使用的协议是ssh协议,端口号是 22 主机 创建对应的加密文件 [rootweb-2 ~]# ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/root/.s…

docker容器中运行jar 出现invalid or corrupt jarfile

1,背景: 在本地java开发完毕之后,想要打包成docker镜像,方便安装。由于本地没有docker环境,也懒得装了。有一台测试的linux机器可以使用,所以先在本地打包生成xxx.jar,然后拷贝到有docker环境的…

vite + electron引入itk报错

代码 import { readImageArrayBuffer } from itk-wasm console.log(readImageArrayBuffer)通过itk-wasm官网,创建新的项目vitevue(vue2或者vue3),都没问题。加入electeon后包此错。通过排查,意外找到原因,…

抵御数字威胁的铠甲——发现迅软DSE加密软件在企业保护中的关键角色

目前国内有自主知识产权和研发成果的企业,它们的电子文档大都以明文的方式存储在计算机硬盘中,电子格式存储的重要机密信息却由于传播的便利性和快捷性,对分发出去的文档无法控制,大的增加了管理的复杂程度,这部分信息…

Swift--量值与基本数据类型

系列文章目录 第一章: Swift–量值与基本数据类型 文章目录 系列文章目录前言对学习过程做一个记录 变量和常量命名规范注释 元祖类型可选类型拆包 typealias 前言 对学习过程做一个记录 提示:以下是本篇文章正文内容,下面案例可供参考 变量和常量 …

家用工作站方案:ThinkBook 14 2023 版

本篇文章聊聊今年双十一,我新购置的家用工作站设备:ThinkBook 14 2023,一台五千元价位,没有显卡的笔记本。我为什么选择它,它又能做些什么。 写在前面 2021 年年中的时候,我写过一篇《廉价的家用工作站方…

开源知识库软件xwiki在Windows下的安装

文章目录 开源知识库软件-xwiki在windows上的部署0、参考文档1、前置环境准备1.1、Windows版本及系统配置1.2、JDK11安装1.3、Tomcat9安装1.4、MySQL5.7数据库的安装 2、xwiki安装3、配置3.1、修改配置支持对文档内容进行搜索 4、问题解决4.1、附件无法上传问题4.1、附件无法下…

【309. 买卖股票的最佳时机含冷冻期】

目录 一、题目解析 二、算法原理 三、代码实现 class Solution { public:int maxProfit(vector<int>& prices) {int nprices.size();vector<vector<int>> dp(n,vector<int>(3));dp[0][0]-prices[0];dp[0][1]0;dp[0][2]0;for(int i1;i<n;i){dp…

Apipost发起请求,能正确返回,日志却打印java.io.EOFException: null 的原因

http响应头首部Content-Length - 程序员大本营 http响应头首部Content-Length HTTP Content-Length深入实践-CSDN博客 用了这么久HTTP, 你是否了解Content-Length?-CSDN博客 具体分析可看上面参考文章。 解决办法&#xff1a;可在请求头加上Content-Length&#xff0c;准确…