第十一章  WEB发布系统
11.1  概述
传统应用应用程序是将通过客户端的应用程序来得到用户关心的数据。
而基于Web发布的应用程序,在客户端不再需要其它的应用程序而直接通过IE得到用户的数据。
IE客户作为一个纯客户,使用的是标准化的软件,且返回到客户端的数据都为统一的HTML超文件格式,数据的传输为HTTP超文件传输协议。
11.1.1  什么是Web应用程序
Web应用程序提供的是动态信息,而不是静态的HTML文件;且不同于Web站点:Web站点只能提供预先建立好的并存储的HTML文件。
Web应用程序特点:交互数据动态生成。
Web应用程序将是IE客户的服务方,又是数据服务、实时数据服务的客户方。
Web应用程序是客户的服务程序,将现地设备的实时数据、历史数据、统计数据通过Web代理,返回给客户方的用户。也就是说:用户在客户方通过IE或其它的浏览器可以得到所需要的工业现场的数据和信息
其次,它又是实时数据库系统、历史数据库系统的客户程序,从实时数据库和历史数据库中得到所要的数据信息。
Web程序基于Window NT 操作平台,通过Microsoft IIS下进行发布。客户方为本地Intranet用户及远程专线接入用户(直接通过拨号登录到服务器上)
11.1  Web程序示意图
客户方做到与浏览器无关。
11.1.2  IIS(Internet Information Server)
Internet信息服务器(IIS)Microsoft推出的基于Windows平台下的Web服务器。可以运行在多种版本的不同的浏览器上。
IIS应用程序只有一个代码基础。IIS的应用程序驻留在Web服务器上。
没有客户安装的问题。所有的数据集中管理。
11.2 总体设计
  程序基于Windows平台,由IIS进行Web的发布:
1.  FrontPage来生成HTML的文件;
2.  ASP构建整个网站:IIS中包含了一个ASP的引擎,ASP的执行总是通过一个global.asa的文件来实现,在这个文件中将初始化一些ASP的对象:如ServerApplication等;
3.  采用VBS描述语言:VBSVB的一个子集,作为一种宿主性的语言。
ASP中的指定方式为:
<Script Language = VBScript>
4.  IE客户与Web的交互
    IE客户的交互是标准的通讯方式,Web程序将数据以统一的HTML格式传给IE客户并显示。
11.2  WebIE的数据交互
11.3  实时数据的发布
实时数据的发布提供给客户一个在远程或LAN中通过浏览器观察组态画面和实时数据的方法。
11.3.1  实现方法
ActiveX技术源于最早的OLE(对象链接与嵌入)技术。Microsoft推出的ActiveX的思路就是为了将一些控件放置到Web页面中去,为了与Internet中使用的一般做好的html怎么发布OLE控件相区别,于是就设计了ActiveX
实时数据发布是在浏览器中嵌入ActiveX的控件加以实现的。这种方式是把IE作为一个可以
嵌入控件的大容器,将一个已经注册的ActiveX的控件作为一个整体加载到客户方的浏览器中。
11.3.2  特点
这种方式的特点是要将这个OCX的文件以及运行所需的环境驻留在客户端,并在客户端要对OCX进行注册,才能有效。当一个页面中打开这个OCX的时候,将从本地运行。
由于ActiveX是源于Microsoft 公司的思想,因此这种使用方法只能在Windows操作系统下才能完成。
第一次使用这个OCX时,客户端要从Web服务器上将所需的文件载到本地并注册,因此第一次运行时会慢一些,但下载和注册只进行一次,下一次将从本地运行。
11.3.3  控件安全
为了保证网络的安全性和IE客户的安全,IEActiveX有一系列的安全机制来保证。只有标记为安全的、有数字签名的控件才能使用。否则是不允许使用的。
数字签名是要去购买许可证书,每年大约是800美元,且每年都要购买。有了数字签名,ActiveX的安全可以通过IE的测试。
如果不购买数字签名的证书,只能强行客户将IEActiveX的安全级别降低。但是如果出现了安全性的问题,我们和Microsoft谁来负这个责?
11.3.4  实时画面的发布
一个OCX关联一幅组态画面。利用OCXFilename的属性,将指定这个OCX关联的组态画面的描述文件,该文件存放在Web服务器的某个固定的目录下。ActiveX初始化时根据Filename属性,读取这个组态画面文件。
文件将传到客户端,绘制画面的工作在客户端完成。OCX内部将根据这个画面描述文件绘出画面。
画面组态文件只有在打开或是客户提交刷新请求时才重新读取。
11.3.5  实时数据的更新
基于B/S模式下,服务方并不关心,也不知道连接到它的用户,它只以一定的方式响应客户提出的请求。因此,对于实时数采用客户定时提交刷新请求,Web方返回结果的方式。
客户方获得实时数据是通过在OCX内的封装的一个COM的存根,通过Web服务器的代理,访问到网络中的实时数据库的内容。或者不要Web
11.3  实时数据发布示意图
上的代理,直接访问到网络中的计算机,代理将运行在网络中的这些机器上。
OCX将按一定的时间间隔来不断的读取实时数据。只在没有关闭这个控件,这个操作将一直进行下去。
11.4  历史数据的发布
历史数据库的发布将历史数据库内容提供给客户端的用户通过浏览器来查询历史数据。并可以由用户提交的请求,检索数据库中的数据,返回给客户端。
对历史数据库的访问用ADO的方式实现
ADOMicrosoft公司开放的一组数据访问对象。ADO的对象基于ActiveX对象,这些对象可使用户通过任何OLE DB Provider访问数据库服务器中的数据。
利用ADO与历史数据库联系,客户方获得历史数据库的数据。
11.4  历史数据发布示意图
11.5  第三方程序接口
我们的应用程序将提供接口,实现与第三方软件的交互,第三方的软件将从接口得到我们公布的实时数据库和历史数据库的数据。
基于安全性的考虑,我们并不直接开放实时数据库和历史数据库,而是提供给访问这些数据一系列的接口,通过接口的方法可以得到实时和历史数据。
考虑接口的标准化和不受编程环境限制,考虑用ActiveX DLL来提供开放的接口。
ActiveX DLL将封装一系列的COM的接口,COM的代理是在Web服务器上运行的。
`
   
    接口
        11.2  Web上与第三方软件通讯

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。