APP下载

ECS业务监测系统的快速构建

2018-10-20查显洋牛连强喻辉

智能计算机与应用 2018年5期
关键词:交费可视化服务器

查显洋 牛连强 喻辉

Abstract: An electronic channel system has broad and complex business scope, and needs the corresponding business monitoring system as a support to detect the states of the hardware and software systems, servers and all kinds of business, and realizes user interaction and business processing. Focused on the demands of China Unicom ECS business monitoring, a scheme to develop business monitoring system by means of open source search engine, plug-ins and J2EE architecture quickly is proposed in this paper. Furthermore, a visual payment and recharge business monitoring system is developed to implement comprehensive monitoring, business system and log monitoring. The system is easy to deploy and operate, which can provide a beneficial case reference for similar system construction.

引言

電子渠道系统(Electronic Channel System,ECS)是一种电子商务系统,业务宽泛、复杂。例如,中国联通ECS包括了网上营业厅、手机营业厅、短信营业厅、自助服务终端和mini营业厅5大类电子渠道,各类电子营业厅营业额累计超过550亿元,电子渠道服务量占全渠道服务量的比例已经超过51%,已逐步成为销售服务的主渠道[1]。庞大的交易量给服务器带来了不小的压力,且系统的软、硬件均处于急速、不断的更新换代中,对系统的状态进行自动化综合监测成为保证其正常运行的重要手段,且检测系统本身也需要满足系统升级所带来的变化。

ECS业务检测系统是为了实时检测ECS系统的业务状况,以实现运维平台的统一管理的Web系统,其目的是使运维人员实时掌握服务器性能、运行状态以及ECS业务的状况,能够对出现的异常进行快速处理,从而降低因为服务器等异常所带来的风险,保证系统的安全运营[2]。

存在一些针对不同要求开发的监测系统或管理系统,大多可以基本满足在不同位置和不同时间段,对服务器的性能和运行状态进行实时检测的基本需求[3],但各公司自行开发的监测系统存在着平台之间缺少统一、规范的监测指标体系、并且缺失用户要求的应用性能监测和分析能力、同时在应用中也不能开展端到端的性能检测、分析和故障定位处理等问题[4]。因此,需要研究快速和有针对性的开发方法,依据特定ECS开发和定制符合自身软、硬件和业务需求的相应监测系统。

本文结合中国联通ECS的业务监测需求,科学选择了有效的框架、插件及构建方法,设计提出了一套容易部署、便于操作、适用于各种业务数据监测需求的服务器管理系统,实现了运维的自动化和规范化。

1系统框架与工作流程

1.1业务分析

目前,中国联通ECS业务较多,如交费充值、积分兑换和话费查询等,其核心是交费充值业务,也涉及购卡、充值、直充、宽带趸交、存费送费、邮寄发票等事宜在内,可面向普通用户和代理商,覆盖网厅、手厅、短厅、自助终端、mini厅、IVR等渠道,支持网银、支付宝、微信等多种支付方式。本文主要对交费充值业务进行全方位、多角度的监测。图1就阐释说明了系统的设计功能结构。

每部分均在检测、分析或统计相关的数据的基础上以适当方式进行可视化。其中,订单金额部分展示实时订单数量和金额;告警部分展示超过阈值的告警项,包括节点异常、各系统的调用量和异常返回码等;主机部分展示各系统主机的总量、当前数量、丢失数量、异常数量及异常主机日志;节点部分展示各系统的节点总量、当前量丢失量和异常量;端口部分主要展示监测各端口的连接速度;交费结果以图表方式展示用户调用电渠系统交费成功与否的标志量;接口部分以地图形式展示全国的交费一卡充接口成功率,并支持对各省的点击细节展示—热点交互;错误部分以扇形图、折线图等展示统计后的手厅和网厅的各种错误数量;日志部分展示各业务系统服务器日志(如Nginx服务器日志),包括调用量、异常、5 min调用量、5 min异常返回码及5 min异常IP等参数。

1.2解决方案

1.2.1系统架构

系统研发中采用B/S架构,将数据采集和监测可视化划分为2个层次。在数据采集层,通过ElasticSearch(简记为ES)检索各业务系统数据,再利用Elastic-job定时任务定期将检索结果存入数据库。监测可视化层从数据库读取数据,应用Echarts插件对数据进行可视化展示。图2就设计绘制了系统的业务逻辑。

图2中,各部分的功能设计可阐释解析如下。

数据存储选取了Oracle数据库,用于存储业务系统以及经过计算服务器(Calculating Server)处理后的各类数据、日志信息、配置信息和监测数据备份等。

数据采集层由Elastic-job和ES组成。搜索服务器ES主要对各业务系统数据库进行检索和分析,分布式定时任务框架Elastic-job通过配置时间定期将ES的检索结果写入监测层数据库。

监测层读取、分析、统计信息,利用可视化层以Web页面形式呈现结果,有助于对服务器的各项数据指标的分析监测及用户交互。

1.2.2开发技术

系统的基本模型采用Java语言进行研发,整体架构为SSM框架,项目以前、后端分离方式设计部署。前端采用百度的Echarts插件作为可视化工具,做到了数据与视图分离,从而使得整个项目易于维护。数据采集层则依赖ES和Elastic-job组合方法来满足功能需要。

2数据检索与实时更新

ECS业务监测系统的核心是对数据的统计及分析,联通每天的业务量可达500万笔左右,数据量则可高达2千万条,实现对巨大数据量的有效检索和及时更新十分关键。

2.1数据检索

2.1.1数据导入

数据检索是以开源搜索引擎ES为基础的,需要先将联通业务数据从ECS数据库导入到ES并排序或建立索引。

ES可以导入各种格式的数据,包括文本、关系型数据库和非关系型数据库(如MongoDB)中的数据。ES支持2种导入方式。其一是利用程序查询出数据,再用ES的建立索引API进行导入。因为数据库中的资源数据时常变化,本文采用更為一般的River导入方式,以便能容易地通过定义时间戳将变化增量更新到索引中,操作较前种方式更为简单[5]。

2.1.2搜索结果的排序优化

在ES中,各属性的默认权重相同,都为1.0,这会导致搜索词出现在文档的各个位置的重要度相同。但是在实际应用中,关键词出现在标题和内容中的重要度存在差异,需要对ES排序进行优化[6]。

对于常见的交费订单,一般都会包含交费金额、交费类型、订单ID等信息,而能索引性标识该信息的属性就是订单ID和交费类型,其次是交费号码、交费金额和其它信息。为此,可以对重要属性赋予更大的权值,使搜索词出现在这些位置时得分更高,在结果中的排序也将更加靠前,方便用户轻松找到所需资源[7]。以下即是对现有数据分析后得到的属性重要性排序及赋予的初始权值:

订单ID(4.0)=交费类型(4.0)>交费号码(3.3)>交费金额(3.0)>交费时间(2.5)=用户ID(2.0)=用户姓名(2.0)>省份(1.5)=地市(1.5)>其它属性(1.0)

在运行阶段,系统还要根据用户的反馈实时调整各属性的权值。

2.1.3查询结果高亮

利用搜索引擎按关键字检索得到的数据量非常庞大。为了帮助用户在大量搜索结果中快速找到需要的信息,系统采用了高亮标注匹配的关键字的方法展示搜索结果,这是很多搜索引擎中的常用方法[4]。

4结束语

对于软硬件环境不断更新换代、业务也在逐渐扩张和变化的ECS系统,其业务监测系统既要与系统的环境、要求和业务相适应,还要在实时性、交互性和功能性等多方面综合展示效能优势。本文设计提出的方案是以开源搜索引擎、插件为基础,可实现监测系统的快速构建,不仅能有效地满足功能性要求,且系统造价低,部署简捷,具有良好的数据展示能力和用户体验,是开发类似系统的可行方法。

参考文献

[1] 杨军. 中国联通全面成本管理案例研究[D]. 南宁: 广西大学,2014.

[2] 苌伟鹏. 数据监控系统的需求分析及技术实现[J]. 数字技术与应用, 2013(2):1.

[3] 孙慧颖. 服务器监控系统的设计与实现 [D]. 北京: 北京交通大学,2017.

[4] SRIVASTAVA R K, GREFF K, SCHMIDHUBER J. Highway networks[J]. arXiv preprint arXiv:1505.00387, 2015.

[5] 肖运文. 基于ElasticSearch的教育资源推荐系统设计与实现 [D]. 北京: 北京工业大学, 2016.

[6] 曾亚飞. 基于ElasticSearch的分布式智能搜索引擎的研究与实现[D]. 重庆: 重庆大学, 2016.

[7] 张高伟. 基于ElasticSearch的分布式视频垂直搜索引擎的设计与实现[D]. 哈尔滨:哈尔滨工业大学,2014.

[8] 张鹏,白朝旭,王锟,等. 基于Quartz的集团化调度任务分布部署研究[J]. 现代电子技术, 2014, 37(2): 80-83.

[9] 段晓东. 基于JSP的水资源监测系统的设计与实现 [D]. 呼和浩特: 内蒙古农业大学, 2017.

猜你喜欢

交费可视化服务器
数据可视化设计在美妆类APP中的应用
思维可视化
复变函数级数展开的可视化实验教学
复变函数级数展开的可视化实验教学
复变函数共形映射的可视化实验教学
复变函数共形映射的可视化实验教学
2018年全球服务器市场将保持温和增长
远程终身教育中学费支付模块的开发与应用研究
人与人
人与人