优云APM最佳实践: 诊断平安城市视频网性能问题

top.jpg


前言:

平安城市已经是一个关系你我他的民生工程,但由于本身系统的复杂性,给运维工作带来了极大的挑战。如何保障摄像头在线率?如何在系统中找到视频系统故障的问题所在?在我们某一次项目经历中,优云APM在发现问题,定位故障等方面,起了很大作用,帮助我们顺利的定位到了系统的故障所在。

平安城市是一个特大型、综合性非常强的管理系统,不仅需要满足治安管理、城市管理、交通管理、应急指挥等需求,而且还要兼顾灾难事故预警、安全生产监控等方面对图像监控的需求,同时还要考虑报警、门禁等配套系统的集成以及与广播系统的联动。

处于平安城市系统核心地位的视频监控系统,架构复杂。组成系统有成千上万的高清摄像头、数以千计视频系统、数以百计的卡口系统、以及背后复杂的存储和管理系统;同时横跨多种网络,包括4G,以太网,光纤网。摄像头在线率,随时随地迅速调取视频,就是整个视频系统成效的关键指标。

最近接到客户反馈,视频网看起来挺正常,监控看到摄像头在线率也挺好,各个市级子系统检测结果都挺正常,但就是打开视频很慢。接到情况,优云马上组织了技术人员前往。

>>>>业务请求跟踪,什么慢?

在初步了解后,我们对视频应用平台整体结构进行了梳理,整个应用平台分成两个层次,省级和各个市级,多达十几个子系统,这里我们介绍一下主要的架构,并且选定关键路径侦听镜像。

1.jpg

通过安装部署优云APM,跟踪观察省级SIP信令,横向综合比较请求多维度信息。我们发现成功率和响应时间与请求量存在明显的关系,当请求量上升时,系统成功率大幅下降,而响应时间大幅上升。省级SIP请求次数与成功率、响应时间的变化关系如下图所示:

2.jpg

>>>>单次业务链跟踪,哪里慢?

在发现了请求响应迟缓之后,我们进一步用优云APM单笔跟踪功能,跟踪单一次SIP请求过程,发现大量的错误和时延,确定最终错误根源在某市级SIP服务器,即省级向市级发起SIP调用过程,市级返回错误,调用失败。

3.jpg

从一次摄像头视频请求的过程来看,从省级发起视频请求,到返回,市级SIP服务器响应时间过长。

>>>> 模拟分析,为什么慢?

到目前为止,问题基本上锁定在市级的SIP服务器一端。我们对市级的两万多摄像头巡检。发现成功率4.4%,有返回,但是错误返回9.6%,无返回超时86%。

从市级SIP服务器指令监控结果来看,同样发现成功率和响应时间与请求量存在明显的关系,当请求量上升时,系统成功率大幅下降,同时响应时间大幅上升。甚至有到1分钟以上。

4.jpg

是什么原因导致了市级的服务器在处理连续请求,仅仅响应了部分请求之后就连续报出错误信息?我们分析了市级SIP服务器的每次响应的时间和状态关系,最终发现高并发的情况下SIP服务器没有正确结束请求,释放资源,导致不能继续处理后续的请求。

事情终于有了一个结果,但对运维探索却才刚刚开始。由于一般客户的视频系统大量的采用了虚拟化,云化系统建设,使得传统运维,定点监测的方案在当前的系统架构下已经不能完全胜任。运维如何跟上业务系统的敏捷开发的脚步?得益于优云前瞻的运维方案,快速的、敏捷的,动态跟踪用户的软件架构,有效的帮助定位和解决问题。

作者:刘成穆

·优云软件资深架构师

·         10多年IT运维管理软件的研发经验

·         主要从事应用性能管理的研究和开发工作

优云:秉承devops的理念,从监控、到应用体验,到自动化持续交付,全栈运维服务平台。

“ 活动期:现到2016年12月31日前使用优云产品全免费,欢迎详询:https://uyun.cn

更多运维技术文章请关注优云官方微信(broada_ops)

优云公众号二维码(250250).jpg

原创文章,作者:uyunops,如若转载,请注明出处:http://www.178linux.com/28839

(0)
上一篇 2016-08-05 16:15
下一篇 2016-08-05 16:16

相关推荐

  • grep与正则表达式

    文本处理中比较强悍的三个工具是:grep、sed、awk。 其中grep主要作用是对于用户给出“模式”对文本逐行进行匹配检查,然后进行打印。   模式:由正则表达式字符及文本字符编写的过滤条件 格式:grep [选项] [正则表达式字符]  文件  常用的选项:     -v:反向查找,显示没有被匹配的的行 …

    Linux干货 2016-08-08
  • 配置NTP服务器

    配置NTP时间服务器 一.安装ntp软件 1.检查是否安装了ntp相关包。 rpm -qa | grep ntp 2.安装ntp软件。 yum -y install ntp 二.参数讲解 ignore  :关闭所有的 NTP 联机服务 nomodify:客户端不能更改服务端的时间参数,但是客户端可以通过服务端进行网络校时。 notrust :客户端…

    Linux干货 2016-10-30
  • Linux 基础(7)——文本处理工具

    cat  tac  rev  more  less           head  tail cut  paste  wc               &nbs…

    2017-07-29
  • Cent OS 6 编译方式安装LAMP

    细节要求: (1) 三者分离于三台主机; (2) 一个虚拟主机用于提供phpMyAdmin;另一个虚拟主机用于提供wordpress; (3) PHP使用FastCGI+xcache; (4) httpd使用非prefork的mpm模式; 一、CentOS6环境准备 1、OS(CentOS6.8)下开发环境包的安装,编译安装程序包需要使用 #yum grou…

    Linux干货 2017-02-24
  • Mariadb之SELECT语法练习

    一 、导入hellodb.sql生成数据库后实现以下操作     # mysql -uroot -h172.16.23.23 -pcento.123 < hellodb.sql     mysql>&nbsp…

    Linux干货 2016-12-17
  • Linux系统性能工具

    linux中几款常用的系统性能分析工具: 1.vmstat命令 解释: 虚拟内存信息 用法: vmstat [options] [delay [count]] vmstat 2 5 //每2秒刷新一次,一共刷新5次 输出属性: procs: r:可运行(正运行或等待运行)进程的个数,和核心数有关 b:处于不可中断睡眠态的进程个数(被阻塞的队列的长度) mem…

    Linux干货 2017-12-19