基于WebService实现设备状态监控Demo(含源码)

版权声明:转载需注明出处 https://blog.csdn.net/suoxd123/article/details/85329758


最终效果

原理分解

  一共包含两部分,客户端(模拟设备),服务器端(Web显示端和WebService控制端),所有的逻辑关系都是在WebService中实现的,由于WebService本身是不含状态的,因此使用了Redis作为状态存储。

WebService服务

  由于WebService是无状态的,因此两个请求之间无法共享数据,当前Demo使用Redis进行数据交互。根据不同的逻辑实现不同功能,包含三部分,分别为设备端的增加、删除记录和Web服务端的查看记录,对应操作即为增加Redis中记录和查看记录。

Web服务端

  该模块用于页面显示,然后通过Ajax实现轮询查看设备状态和并更新显示。

设备端

  这块虽然有报告故障和修复故障两个功能,实现逻辑是一样的,只是报告故障是在Redis中增加记录,修复故障是将记录清除,具体逻辑在服务端,这里只需要调用即可。

部署流程

1. 下载

  点击下载源码,然后解压到本地。
  Redis服务器,下载后安装(版本3.2.100)。

2. IIS部署

  首先将物理路径选择web源码对应的目录,然后将应用池选择 .net freamwork 4.0,如果有权限问题,需要将文件夹的访问权限赋值给IIS_User,如下图所示
  

3.启动客户端

  直接F5启动项目即可。
  默认设置是基于本机测试的,如果要部署到局域网,在客户端中将注释的内容打开,注释下面一行,即使用ServiceReference1,由于ServiceReference2我注册服务的是本机IP地址(127.0.0.1),而ServiceReference1使用的是局域网IP,不过需要根据局域网内服务器的IP地址设置,或者自己新增加也行。

//ServiceReference1.WebService1SoapClient service1 = new ServiceReference1.WebService1SoapClient();
ServiceReference2.WebService1SoapClient service1 = new ServiceReference2.WebService1SoapClient();

4.说明

  若没有安装开发环境,或者不需要开发,只是想看下实例效果,在Windows 7及以上版本电脑上都可以运行。(具有 .net freamwork 4.0及以上版本。)

  1. 通过IIS部署服务端,需要在应用池中选择4.0版本
  2. 直接进入目录找到debug目录下的exe文件,双击运行则可以启动客户端

扫码关注公众号,一起思考进步。
真相很简单

猜你喜欢

转载自blog.csdn.net/suoxd123/article/details/85329758