跨平台服务器性能监控系统模型的设计思路

来源 :硅谷 | 被引量 : 0次 | 上传用户:shuibizi
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要: 随着企业信息化的普及,越来越多的企业都架设自己的服务器,他们迫切需要一种能够监控服务器性能状况的系统。在分析服务器性能指标技术和远程监控技术的基础上,提出跨平台服务器性能监控系统原型,能够实时远程监控机房服务器的性能,显示各服务器实时性能参数,具有优化、预警、报警等功能。实验结果表明,该模型工作很好,它可以自动、有效地监控远程服务器,保障企事业单位业务的正常运行。
  关键词: 远程;集中;跨平台;服务器;性能监控]
  0 引言
  信息化革命以来,为了提升企业的竞争力、提高企业的管理水平,企业信息化变得越来越普及。可以说,当前企业单位都或多或少的架设了自己的服务器,这些服务器都是部署在机房里,经常无人值守。而这些服务器运行的平台可能是Windows服务器,也可能是Sun Solaris或者HP的UNIX,情况不一而足。 由于企业对这些服务器的可持续运行能力要求很高,而传统的人工监测方式无法做到对性能故障防范于未然,一般都是发现系统运行缓慢或无法运行了,才去定位故障的原因,这样即浪费了企业的人力物力,又影响了企业的正常工作。所以,如果能有一个可以实现远程集中监控服务器性能,并且能够迅速定位性能故障的系统,就变得非常必要。
  本文从整体需求问题出发,将整体需求问题分解成远程集中监控、跨平台监控两个大问题,然后针对每个大问题做进一步分解、分析和研究,然后提出相应问题的解决方案。最后,在分解研究的基础上提出系统的整体解决方案,以供参考。
  1 如何实现远程集中监控
  对于这个问题的解决,我们先探讨实现远程集中监控的必要性,然后提出问题可能的解决方式,最后选取一种合适的方式来解决我们的问题。
  1.1 为什么需要远程集中监控
  我们知道,企业的服务器一般都集中安装在机房中,如果没有采用远程监控方式,那么只能走到每台服务器上去检查系统的性能状况。而如果不采用集中监控方式,那么,每次只能检查一台服务器的性能状况,并且需要手工执行命令、人工判断,从而获得性能数据。而获得的性能数据应该如何采集出来,也是一个头疼的问题。由此看来,如果能够实现远程集中监控,那么这些问题就能得到很好的解决。
  1.2 比较CS与BS两种软件系统架构的优缺点
  从目前流行的软件系统架构来看,有CS和BS两种方式。前者需要开发一个客户端程序,用于执行客户端的功能;后者采用浏览器作为客户端,客户端功能主要使用客户端脚本程序来执行。这两种方式各有优缺点。CS方式由于客户端程序是编译后的代码,可以独立在被安装的机器上运行,所以效率较高、可控性较好;而后者由于客户端程序运行在浏览器中,其优势在于客户端不用安装,页面呈现效果丰富等。但是,客户端程序是解释运行的,效率较低。此外,由于浏览器安全控制的需要,浏览器端的功能权限受到了限制。
  1.3 系统可采用CS加BS的结构来实现
  由上文分析可见,CS相比BS结构具有运行效率高、可控程度高的特点,所以远程集中监控系统的实时监控模块更适合采用CS结构。再者,考虑到数据传送的时候,要求实时性高,信息封装安全,采用CS结构也具有更大的优势。另外,客户端程序在采集性能数据的时候,需要在后台静默运行,CS结构的客户端端可以较好实现隐蔽运行的效果,而网页形不易处理,所以CS结构的也更适合些。
  而对于历史性能报表部分,由于数据从数据库中提取,对性能的要求不是很高,但是对于报表的呈现样式、对于报表的访问便利性要求较高,所以可考虑采用BS结构呈现。
  1.4 服务端多线程的处理
  服务端要实现集中监控多个终端的服务器,还需要处理好多线程的问题。对于这个问题,我们可以在服务端构建一个处于轮询状态的多线程服务程序,当有客户端连接上来的时候,启动一个新的线程。当客户端有新的性能数据上来的时候,服务端能够通过消息触发机制,更新对应监控窗口上的监视数据和图形。
  2 如何实现跨平台监控
  我们知道,不同企事业单位服务器的系统平台具有多样性的情况,那么,如何实现跨平台监控,如何让系统在不同的平台下运行就成为一个很关键的问题。对于这种现象,应该从兼容性、可扩充性的角度进行考虑。在提出有效解决方案之前,让我们先明确以下问题。
  2.1 为什么要实现跨平台
  试想,一个仅能监控运行Windows或者Unix服务器性能的系统,如何能满足现代企业服务器多元化的需求,如何能够在将来需求扩展的情况下,延长系统的生命周期?所以,答案很明确,一个真正的性能监控系统,必然是一个在实现了远程集中监控之后,又能满足跨平台监控的系统。
  2.2 跨平台监控首先要解决客户端跨平台
  对于一个程序,要实现跨平台,一种很好的解决方案就是,采用跨平台的语言来实现,比如Java就是一种很好的跨平台语言。我们可以使用Java来开发客户端,而服务端应该用什么来开发?下文我们会继续探讨。那么,服务端与客户端之间应该如何通信呢?我们且看下文分析。
  2.3 对于实时监控部分,Socket通信是一种较好的方式
  解决了客户端可运行在不同操作系统上的问题之后,通信问题成为一个很关键问题。为了实现系统的跨平台监控,那么,很有必要对各个平台的网络通信协议进行研究比较,从而,能够从中选取一种各种平台都能接受的方式来实现通信。
  首先,我们来看http方式,基于这种通信协议的通信方式主要是Web方式,也就上文提到的BS结构方式。目前主流的服务器平台都能支持。但是,由于BS结构存在运行效率较低,运行功能受限的问题,此种方式不太适合实时监控部分,但可考虑用于呈现历史性能报表。
  其次,我们来看UDP通信方式,这种协议的最大优点是异步通信,可用于无连接方式。但是,性能监控系统对于实时性的要求较高,不太适用。
  最后,我们看Socket通信方式,这种通信方式具有效率高,数据封装灵活的特点,他基于TCP/IP方式进行通信,能够被各种平台所支持,所以,这种通信方式比较适用于远程集中监控系统的实时监控模块。   2.4 对于通信数据的封装
  实时监控模块需要封装的数据主要是关于服务器的IP、机器名以及各种与性能相关的数据。这些数据应该封装成何种格式,也是一个需要考虑的问题。考虑到处理的简易性,也许封装成二进制对象比较合适,但是,由于二进制对象数据依赖某种编程语言,兼容性较差。而且我们准备建设的这个模型为了实现跨平台,客户端和服务端采用的开发语言极有可能不一样,所以采用XML格式比较合适。由于XML格式是网络应用层数据封装的一个标准,能够被多种平台及开发语言所接受。此外,这种格式的数据,描述能力很强,可以满足封装各种类型性能数据的需求。性能报表部分不存在数据封装的问题,因为其已经被转换为关系数据库中的数据,在此不再赘述。
  2.5 关于图形显示的问题
  目前主流的开发语言都提供了图形应用开发接口(即GDI接口),在实现图形化显示的时候,可以调用这些接口,实时在屏幕上刷新图形。
  3 整体解决方案的提出
  整体解决方案应从系统的角度进行考虑,基于以上的研究结论提出。
  3.1 软件架构
  采用CS结构架设监控系统实时模块,历史性能报表呈现可采用BS结构。为了便于管理维护,监控系统Server端主要运行在Windows平台下,Client端可安装在各种类型的服务器上,用于采集服务器的性能数据。Client程序可以采用java语言编写,以实现跨平台安装和运行,Server端程序可采用某种高级语言来开发,为了考虑开发和运行效率,建议使用C++/C#程序语言实现。
  3.2 监控软件系统内部通信
  鉴于Socket通信的优势,实时监控模块可采用Socket通信方式实现。Client端的功能主要是采集服务器的性能数据,通过Socket通信方式发送到服务端进行处理。信息封装的格式,采用XML格式,以便于满足系统的兼容性和可扩充性要求。历史性能报表模块可采用BS结构实现,采用http通信协议传输数据,以便于管理者通过IE或其他浏览器进行查看。
  3.3 系统功能需求
  可考虑包含以下功能:客户端包含采集性能信息、显示性能信息、手动设置服务端、显示连接状态、传送状态;服务端包含监视客户端性能数据、远程控制、历史性能数据查询、设置阀值、报警提示等功能。
  4 结论
  经测试验证,本模型可以远程集中监控跨平台服务器的性能数据,并具有优化、预警、报警等功能。可监控的服务器系统平台主要为Windows和Unix系列,最大同时监控服务器数量可达到20台,数据更新频率可达到3秒每次,可持续运行时间能达到3个月以上(估计值)。总之,整体功能效率良好,在完善优化之后能够满足企事业单位服务器性能监控的一般需求。
  参考文献:
  [1]边琦、王俊萍,在线式Windows2003服务器性能监控系统的设计与开发[J].软件开发与设计信息与电脑,2009第11期.
其他文献
摘要: 分设计和安全维护两个方面,对电视播出系统的正常运行进行简单的探讨。  关键词: 电视播出系统;设计;安全维护  电视播出系统经历了漫长的发展历程,日益先进的播出系统、逐渐增多的频道及不断加大的节目、广告和字母等都逐步改变了节目的播出方式和播出形式,播出系统的内外部都相应地发生了变化。随着国家整体推进“三网融合“、高标清同播等新形势的发展,电视媒体的指导思想转变为由单一传统媒体为主向新媒体和
茶叶品牌极为重要,青阳“黄石溪毛峰”早在1915年就获巴拿马金奖,1958年列为国务院礼品茶,可是500g只卖100~160元.浙江“龙井”也是绿茶,500g却卖到2000~3000元.为什么?前者无
该文从挂篮荷载计算、施工流程、支座及临时固结施工、挂篮安装及试验、合拢段施工、模板制作安装、钢筋安装、混凝土的浇筑及养生、测量监控等方面人手,介绍了S226海滨大桥
摘要: PCB设计是电子产品设计的重要环节之一。随着贴片元器件的广泛使用,表贴工艺技术的流行,进一步推动电子产品向工作高速度、元件高密度、存储大容量的方向发展。这对印制电路板的设计提出新的挑战。PCB设计,除具备基本的电子功能外,还应美观精巧。所设计印制电路板,在大规模生产线上有诸多的约束条件,比如外形尺寸、定位标识、封装类型等等,这些问题都可归结为可制造性设计,在PCB设计之初,都必须考虑和进行
摘要: 机电一体化是多学科技术领域综合交叉的技术密集型系统工程,因此在产品设计的过程中,要特别强调技术融合,学科交叉的作用。阐述机电一体化产品典型设计进程,它通常划分为四个阶段,包括准备阶段,理论设计阶段,设计实施阶段,设计定型阶段。  关键词: 机电一体化;设计方法;步骤  机电一体化系统设计是多个学科的交叉和综合,涉及的学科和技术非常广泛,其技术发展迅速,水平越来越高。由于机电一体化产品覆盖面
该文从挂篮荷载计算、施工流程、支座及临时固结施工、挂篮安装及试验、合拢段施工、模板制作安装、钢筋安装、混凝土的浇筑及养生、测量监控等方面人手,介绍了S226海滨大桥
请下载后查看,本文暂不支持在线获取查看简介。 Please download to view, this article does not support online access to view profile.
摘要: 随着通信技术的不断发展,无线移动网络的远程测控系统成为当前研究的主要热点之一。介绍基于GPRS移动通信技术的远程测控系统的设计,阐述其系统的组成方式和功能,重点分析嵌入式环境的GPRS移动通信技术的远程测控系统的硬件和软件的设计。通过GPRS移动通信技术的应用,扩展远程测控系统的功能,具有广泛的应用前景。  关键词: GPRS移动通信;远程测控系统;嵌入式;设计  GPRS通过无线分组的形
该文从挂篮荷载计算、施工流程、支座及临时固结施工、挂篮安装及试验、合拢段施工、模板制作安装、钢筋安装、混凝土的浇筑及养生、测量监控等方面人手,介绍了S226海滨大桥
摘要: 从系统的角度出发,分析商业模式的基本逻辑,指出价值和关联是商业模式的本质,包括价值目标、价值载体、价值创造三个核心方面,而利益相关者之间的“关联”是商业模式的核心内涵。根据这一基本的逻辑讨论企业在进行商业模式设计和选择时应遵守的基本流程和方法,即首先应明确企业的价值主张,进行价值定位,然后设计产品与服务的组合模式,最后设计利益相关者之间的价值交易形式与内涵。  关键词: 商业模式;设计;利