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

小研究 - 一种复杂微服务系统异常行为分析与定位算法(二)

针对极端学生化偏差(Extreme Studentized Deviate,ESD)算法只能对单变量数据进行异常检测,难以对多变量数据进行异常行为度量,提出一种复杂微服务系统异常行为分析与定位(Multivariate Seasonal Hybrid ESD,M.S-H-ESD)算法。首先,对云平台的微服务运维日志数据进行提取,将多元日志数据进行加权归一得到一元数据。然后,对此一元数据采用多元周期混合ESD(Seasonal Hybrid ESD,S-H-ESD)算法对每个服务的异常度进行度量,进而获得异常度最高的服务,根据置信度和异常上限的设置,定位微服务系统异常的根因服务。实验结果表明,M.S-H-ESD算法对时间序列多维数据的异常行为检测具有较高的精确度、召回率和F1值,能够准确定位微服
务系统中的异常服务。

目录

2  实验结果与分析

2.1  仿真环境和数据选取

2.2  异常检测结果评估

2.3  微服务异常行为分析和定位

2.3.1  数据说明

2.3.2  微服务根因异常定位仿真结果


2  实验结果与分析

2.1  仿真环境和数据选取

仿真实验采用的环境为64核Intel Xeon plati -num 8260 MCPU、 40 G 内 存、 Python3.7 、 Ubun -tu18.04 、 Cuda 10.2和Pytorch 1.6.0 。为了验证 M.S - H - ESD 方法的有效性,选取上证指数周期性明显的某股票 2019 — 2022 年的股票交易数据作为实验数据,并对异常数据进行标记。

2.2  异常检测结果评估

在模 拟 实 验 中,分 别 采 用 K - means 、 PCA -Q统计方法和M.S - H - ESD 方法对异常进行检测,并对检测结果的准确性、召回率和 F1 等指标进行评估对比,结果如图 2 所示。

从实验结果可以看出, M.S - H - ESD 方法对于多变量周期数据的异常检测结果优于其他异常检测算法,并在召回率和 F 1 评估上有较大优势,分别高出30%和16% 。这是因为,对于时间序列数据,M.S - H - ESD算法考虑了初始阶段的周期和趋势,在提取特征时,首先去除了周期和趋势,凸显了数据特征。

2.3  微服务异常行为分析和定位
2.3.1  数据说明

在复杂微服务系统中,涉及到不同时间序列的服务日志数据,每一个系统的日志数据都需要分别提 取。提 取 日 志 数 据 并 将 其 构 造 为 多 元 数据,主要包括 OSB ( Oracle Service Bus )、 CSF ( Com -mon Service Framework )和 JDBC ( Java DatabaseConnectivity )等调用类型、开始时刻、持续时间、调用服务、被调服务以及 CPU 占用率、内存占用率和页面缓存等关键性能指标(KeyPerformance In -dicator , KPI )。 部 分 数 据 的 格 式 和 内 容如 表 1所示。

2.3.2  微服务根因异常定位仿真结果

微服务调用的数据不能直接用于根服务异常定位。复杂微服务系统的调用结构如图 3 所示。基于调用服务和被调服务分组数据,使用 M.S - H -ESD 算法获得每个组服务异常得分值,为分组服务对异常调用得分进行排序,选择前5%作为微服务根因异常的选择对象。

利用 M.S - H - ESD算法对多元数据处理后,根因异常服务在不同参数的评分结果如表 2 所示。 α和 u 值越小,需要定位的根因异常服务就越少,反之亦然。因此,根据情况,可以更准确地将较小的参数分配给问题服务。调整异常的置信度 α 和异常得分的上限 u ,会得到不同服务下异常得分的值。不同配置参数下根本原因异常得分的折线图如图4所示。从图4中可以看出,异常的置信度 α 和异常得分的上限 u 并没有改变异常根因服务评估 结 果的趋势。

表2反映了异常根因服务得分和定位结果,其中异常得分的上限 u 越高,得到的异常根因服务越紧致,反之,得到的异常根因服务越松弛。按照得分结果进行排序,最有可能发生异常的根因服务就在其中,排序愈靠前,发生异常的可能性越大。通过对服务异常的评分排序,可以得到复杂微服务系统的根因异常分析结果,如表3所示。

相关文章:

小研究 - 一种复杂微服务系统异常行为分析与定位算法(二)

针对极端学生化偏差(Extreme Studentized &#…...

Docker 安装 MySQL5.6

方法一、docker pull mysql 查找Docker Hub上的mysql镜像 #docker search mysql 这里我们拉取官方的镜像,标签为5.6 #docker pull mysql:5.6 (第一次启动Docker-MySql主要是查看Docker里面MySQL的默认配置,数据位置,日志位置,配…...

vue组件跳层级时的事件处理 (事件的广播与派发)

相信大家一定用过elementui这个组件库,那么对里面的表单组件一定不陌生。 最常用的几个组件就是el-form,el-form-item,el-input,表单校验时的错误提示功能是交给el-form-item来实现的。当el-input填写时触发校验规则,…...

毫米波雷达 TI IWR6843 官方测试程序(Out Of Box Demo)

1.硬件准备 1.IWR6843AOP板子 2.两个USB转串口模块(因为我的是自己做的板子,板子上没有集成USB转串口芯片) 2.软件准备 1.最新版本的CCS,注意后缀没有THEIA https://www.ti.com/tool/CCSTUDIO?DCMPdsp_ccs_v4&HQSccs 2.最…...

中大标了 5813万

汗水浇灌收获,实干笃定前行。刚刚进入八月,鸿雁政企事业部就传来了特大喜讯——鸿雁中标浙江丽水国际会展中心电线电缆项目,中标总金额达5813万!一举刷新鸿雁单体项目中最高中标金额。 据了解,浙江丽水国际会展中心项…...

Java电子招投标采购系统源码-适合于招标代理、政府采购、企业采购、等业务的企业 tbms

​ 功能描述 1、门户管理:所有用户可在门户页面查看所有的公告信息及相关的通知信息。主要板块包含:招标公告、非招标公告、系统通知、政策法规。 2、立项管理:企业用户可对需要采购的项目进行立项申请,并提交审批,查…...

RocketMQ安装和简单使用

说明:RocketMQ与RabbitMQ一样,是分布式架构中的一个组件,用来解决微服务之间的异步调用。同类的还有两个,各自的特点如下: Rocket结构 服务启动时 发送消息时 其中各个部分的功能如下: (1&…...

Codeforces Round 869 (Div. 2)

C 求最长似递增子序列 是子序列! 我误以为是最长上升子序列的变式,但是这个题目和那个题目,并不是很一样 我们选择观察样例: 1 2 4 3 3 5 6 2 1 其实样例当中就给我们了答案,我们能感觉的出来,应该是用长…...

【雕爷学编程】MicroPython动手做(28)——物联网之Yeelight 3

知识点:什么是掌控板? 掌控板是一块普及STEAM创客教育、人工智能教育、机器人编程教育的开源智能硬件。它集成ESP-32高性能双核芯片,支持WiFi和蓝牙双模通信,可作为物联网节点,实现物联网应用。同时掌控板上集成了OLED…...

CTFSHOW php 特性

web89 数组绕过正则 include("flag.php"); highlight_file(__FILE__);if(isset($_GET[num])){$num $_GET[num]; get numif(preg_match("/[0-9]/", $num)){ 是数字 就输出 nodie("no no no!");}if(intval($num)){ 如果是存在整数 输出 flagecho …...

2、认识O(nlogn)的排序

归并排序 分两半,谁小拷贝谁 public class Test{public static void mergeSort(int[] arr) {if (arr == null || arr.length < 2) {return;}mergeSort(arr, 0, arr.length - 1);}public static void mergeSort(int[] arr, int l, int r) {if (l == r) {return;}int mid =…...

什么是 HTTP 长轮询?

什么是 HTTP 长轮询&#xff1f; Web 应用程序最初是围绕客户端/服务器模型开发的&#xff0c;其中 Web 客户端始终是事务的发起者&#xff0c;向服务器请求数据。因此&#xff0c;没有任何机制可以让服务器在没有客户端先发出请求的情况下独立地向客户端发送或推送数据。 为…...

操作系统用户态和核心态和CPU上下文切换

目录 操作系统用户态和核心态用户态和核心态操作系统用户态和核心态是如何交换的系统调用 CPU上下文什么是CPU上下文和CPU上下文切换CPU为什么要进行上下文切换 操作系统用户态和核心态 用户态和核心态 操作系统两种状态&#xff1a;用户态和内核态。 操作系统的用户态和内核态…...

TSINGSEE青犀视频汇聚平台EasyCVR视频广场面包屑侧边栏支持拖拽操作

TSINGSEE青犀视频汇聚平台EasyCVR可拓展性强、视频能力灵活、部署轻快&#xff0c;可支持的主流标准协议有GB28181、RTSP/Onvif、RTMP等&#xff0c;以及厂家私有协议与SDK接入&#xff0c;包括海康Ehome、海大宇等设备的SDK等&#xff0c;能对外分发RTSP、RTMP、FLV、HLS、Web…...

RocketMQ发送消息超时异常

说明&#xff1a;在使用RocketMQ发送消息时&#xff0c;出现下面这个异常&#xff08;org.springframework.messging.MessgingException&#xff1a;sendDefaultImpl call timeout……&#xff09;&#xff1b; 解决&#xff1a;修改RocketMQ中broke.conf配置&#xff0c;添加下…...

WordPress做权重站:二级目录伪静态写法

我喜欢用WordPress建站&#xff0c;但是每个网站我都会写3个以上的二级目录&#xff0c;为什么了&#xff0c;因为WordPress数据量过大会导致数据库很大很卡&#xff0c;所以这种做法可以减轻数据库的负荷。我一般每个目录的文章达到15万篇就不会再更新了&#xff0c;3个目录加…...

浅谈下API初步认知

当我们谈论API&#xff0c;我们指的是应用程序接口&#xff08;Application Programming Interface&#xff09;。API允许不同的软件应用程序之间互相通信和交互。它定义了一组规定和协议&#xff0c;用于确定数据传输和请求的格式、方法和功能。 API的作用是在软件开发中提供一…...

LeetCode--剑指Offer75(2)

目录 题目描述&#xff1a;剑指 Offer 58 - II. 左旋转字符串&#xff08;简单&#xff09;题目接口解题思路1代码解题思路2代码 PS: 题目描述&#xff1a;剑指 Offer 58 - II. 左旋转字符串&#xff08;简单&#xff09; 字符串的左旋转操作是把字符串前面的若干个字符转移到…...

基于vue-cli3的vue项目 通过postcss-pxtorem 实现px自动转换成rem并解决版本问题

1、npm安装依赖 npm install lib-flexible --save npm install postcss-pxtorem --save-dev 2、引入lib-flexible 在项目入口文件main.js 中引入lib-flexible import "lib-flexible/flexible.js"; 3、 配置postcss-pxtorem vue-cli3 项目postcss-pxtorem的…...

前端开发常用的方法封装(二)

1.将阿拉伯数字翻译成中文的大写数字 export const numberToChinese (num) > {let AA new Array("零","一","二","三","四","五","六","七","八","九","十&q…...

SiameseAOE中文-base多场景落地:电商、酒店、教育评论情感结构化实践

SiameseAOE中文-base多场景落地&#xff1a;电商、酒店、教育评论情感结构化实践 1. 引言&#xff1a;从海量评论中挖掘价值 你有没有遇到过这样的烦恼&#xff1f;面对成千上万条用户评论&#xff0c;想了解大家对产品、服务到底满不满意&#xff0c;却无从下手。一条条看&a…...

WPS加载项开发实战:从零到一构建你的第一个wpsjs插件

1. 为什么你需要WPS加载项开发 第一次听说WPS加载项时&#xff0c;我也是一头雾水。直到接手了一个客户需求——他们需要在WPS里快速生成固定格式的周报模板&#xff0c;我才真正体会到这个功能的价值。想象一下&#xff0c;你每天要处理几十份格式雷同的文档&#xff0c;如果能…...

AutoGLM-Phone-9B快速上手:图文语音全能AI,小白也能轻松部署

AutoGLM-Phone-9B快速上手&#xff1a;图文语音全能AI&#xff0c;小白也能轻松部署 1. AutoGLM-Phone-9B简介 1.1 什么是AutoGLM-Phone-9B AutoGLM-Phone-9B是一款专为移动设备优化的多模态AI模型&#xff0c;它能同时理解文字、图片和语音信息。简单来说&#xff0c;就像给…...

从TJA1050到SIT1050T:手把手教你搞定CAN收发器外围电路与PCB布局避坑

从TJA1050到SIT1050T&#xff1a;手把手教你搞定CAN收发器外围电路与PCB布局避坑 在汽车电子和工业控制领域&#xff0c;CAN总线因其出色的抗干扰能力和可靠性成为首选通信协议。但许多工程师在设计CAN收发器外围电路时&#xff0c;常因忽视数据手册中的关键细节而导致通信不稳…...

H5扫码功能实战:如何在微信和原生浏览器中实现二维码解析(附完整代码)

H5扫码功能实战&#xff1a;如何在微信和原生浏览器中实现二维码解析 移动互联网时代&#xff0c;二维码已成为连接线上线下最重要的入口之一。作为前端开发者&#xff0c;我们经常需要在H5页面中实现扫码功能&#xff0c;但不同环境下的兼容性问题往往让人头疼。本文将深入探讨…...

罗技鼠标宏压枪脚本终极指南:3步实现绝地求生精准射击

罗技鼠标宏压枪脚本终极指南&#xff1a;3步实现绝地求生精准射击 【免费下载链接】logitech-pubg PUBG no recoil script for Logitech gaming mouse / 绝地求生 罗技 鼠标宏 项目地址: https://gitcode.com/gh_mirrors/lo/logitech-pubg 还在为绝地求生中枪口乱跳而烦…...

EcomGPT-7B电商大模型Java八股文实践:面试级电商系统设计题解析

EcomGPT-7B电商大模型Java八股文实践&#xff1a;面试级电商系统设计题解析 最近在技术社区里&#xff0c;看到不少朋友在讨论一个挺有意思的电商大模型——EcomGPT-7B。它不像那些通用的聊天模型&#xff0c;而是专门针对电商领域训练出来的。我就在想&#xff0c;如果用它来…...

突破3大资源壁垒:UABEA工具实战指南

突破3大资源壁垒&#xff1a;UABEA工具实战指南 【免费下载链接】UABEA UABEA: 这是一个用于新版本Unity的C# Asset Bundle Extractor&#xff08;资源包提取器&#xff09;&#xff0c;用于提取游戏中的资源。 项目地址: https://gitcode.com/gh_mirrors/ua/UABEA 当你…...

OpCore Simplify:自动化OpenCore EFI配置的革命性工具

OpCore Simplify&#xff1a;自动化OpenCore EFI配置的革命性工具 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify OpCore Simplify是一款专为Hackinto…...

自动驾驶模拟平台模型配置全指南:从技术选型到场景验证

自动驾驶模拟平台模型配置全指南&#xff1a;从技术选型到场景验证 【免费下载链接】alpasim 项目地址: https://gitcode.com/GitHub_Trending/al/alpasim 一、AlpaSim核心价值&#xff1a;构建自动驾驶研发闭环 AlpaSim作为开源自动驾驶模拟平台&#xff0c;通过模块…...