正 文

CS模式短信监控系统的设计与实现


www.7dspace.com  更新日期:2006-1-18 2:10:34  七度空间


  简介:

  在通信行业和网络行业,往往需要对一些重要的系统进行24小时的监控,随着短信的兴起,在传统监控系统中增加短信告警就会非常实用,本文介绍了简单的分布式短信监控系统的设计与实现。

  基本的设计思路如下:

  1) 在一个稳定的Socket通讯包中进行代码改造,在www.codeproject.com中找到一个分为Client/Server端的通讯程序,连接方式有TCP/UDP两种方式选择,一个server可连接多个client端,client/server之间可对发数据

  2) 在需要被监控的程序(这里假设为MonitorProg.exe)中增加定时写数据库的功能,一般来说设为5分钟,这里是将数据库作为监控数据的一个中间存贮

  3) 改造Socket通讯的客户端程序,让Client.exe定期读数据库中的时间,如果时间在某个阶段不变说明被监控程序不正常

  4) 改造Socket通讯的Server端程序,接受Client端的告警信息然后通过短信接口发送出去,发送短信的方式有很多,这里采用GSM Modem发送短信,在VC代码中采用MSComm控件来向GSMModem写串口数据.

  补充:以上的设计思路中采用定期写入当前时间的方式进行监控,这对系统的性能或许有一定影响,这就需要在稳定性和性能两方面进行权衡.

  以下为具体的实现步骤:

  1) 建数据库表

create table Module_Tbl_Monitor
(
 ExeName varchar(5), //被监控程序名称
 EnterTime varchar(20) //监控时间
)

insert into Module_tbl_monitor values('Exe1','2005-12-28 14:00:00')//插入一条记录,表示对Exe1程序进行监控

  2) 修改client端程序

  Client端只需要增加一个定期读数据库的代码.

/******************
*Description: (全局)连接数据库
*Parameters: sSection --- 配置文件Section
sName --- 配置项
sDefaultValue --- 缺省值
*Author:
*Version: 1.0
*Date: 2005-3-8 17:27
*Cautions: 无
******************/

void connectDB()
{
 if(FAILED(m_pConnection.CreateInstance("ADODB.Connection")))
 {
  AfxMessageBox("Create Instance failed!");
 }
 try
 {
  m_pConnection->Open("DSN=??;UID=sa;PWD=??","","",-1);//数据库连接串
 }
 catch(_com_error e)
 {
  //char mybuf[10240];
  //wsprintf(mybuf,"Description = '%s'\n",(char*)e.Description());
  AfxMessageBox("Connect to database error!");
 }
}

/*****************
*Description: 从数据库中获取监控数据
*Parameters:
*Author:
*Version: 1.0
*Date: 2006-1-6
*Cautions: 无
****************/

void CClientSocketDlg::getData()
{
 m_pRecordset.CreateInstance(__uuidof(Recordset));
 m_pRecordset->Open("select * from Module_Tbl_Monitor",
  m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);

 m_pRecordset->MoveFirst();
 _variant_t Holder;

 int iNum = 1;
 CString machineName;
 CString sTime = "";

 while(!m_pRecordset->adoEOF)
 {
  ……..
  //如果时间没变,向Server发送告警信息
 }

2页,页码:[1] [2] 

上一篇:Linux系统下的多线程编程入门
下一篇:体验.NET2.0的优雅之Provider应用
标题:CS模式短信监控系统的设计与实现 作者:周凯 来源:博客网
收藏此页】【打印】【关闭
站 内 搜 索
 

热 点 导 读
特 别 推 荐