基于java的数据传输设计的实验报告高灵琪.doc

基于java的数据传输设计的实验报告高灵琪.doc

ID:59211945

大小:21.00 KB

页数:3页

时间:2020-09-10

基于java的数据传输设计的实验报告高灵琪.doc_第1页
基于java的数据传输设计的实验报告高灵琪.doc_第2页
基于java的数据传输设计的实验报告高灵琪.doc_第3页
资源描述:

《基于java的数据传输设计的实验报告高灵琪.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、基于java的数据传输设计的实验报告基于Java和OPC技术的分布式远程监控系统,系统的结构模型如图1所示。系统的功能是:实现对生产过程的数据采集和存贮,并在远程客户端实现对采集过程的监测和控制。1.介绍系统采用多层Client/Server结构。总体上可以分为3个层次:数据服务器层、应用服务器层和客户端。数据服务器负责提供所需的数据,包括系统的实时数据、历史数据和报警信息等;应用服务器接收客户端发出的请求信息,根据客户端的请求与数据服务器进行交互,实现客户端的请求。客户端负责数据曲线的显示,并负责处理用户的监控请求。2.1 系统中的数据传送问题  本

2、系统采用分布式技术,应用服务器和远程客户端分别位于网络中不同的主机上,采集的数据用RMI技术通过网络从服务器端传送到客户端。 系统中,客户端需要完成两项任务,一是对采集过程的监测和控制,并用波形图把采集的数据实时地显示在客户端界面上,这就要求数据采集服务器采集的数据实时的传送到客户端,保证监控的实时性。客户端的另一项任务是,把从服务器端传送过来的数据保存在客户端计算机上,以便用户能浏览和分析采集到的数据。为保证对数据分析的正确和完整,数据采集服务器采集的数据应全部传送到客户端,这就要求数据传送的准确性,即数据应无丢失的在网络上进行传送。总之,数据从服务

3、器端传送到远程客户端时,应满足数据传送的实时性和准确性。 然而,当数据在网络上进行传送时,由于网络的连接情况和拥塞情况具有一定的随机性,很多时候会出现网络抖动的情况,造成客户端与服务器端失去连接,使数据传送中断。为保证数据传送的实时性和准确性,需采取措施,当网络连接出现短时断开的时候,客户端和服务器端应能自动重新建立连接,使实时监控和数据保存继续进行。对于由于网络短时中断时没能传送的数据,应采用缓存的方法,待连接重新建立后,再把这些数据进行传送。3.1数据传送方案及数据缓存的实现如前所述,客户端需要完成两项任务:一是对数据采集进行实时监控,二是把从服务

4、器端传送过来的数据保存在客户端计算机上。在这两项任务中,实时监控任务要求保证数据的实时性,即服务器端采集的数据应实时地传送到客户端,让用户及时了解数据采集的情况。而数据保存任务需要的是数据传送的准确和完整,即采集的数据应无丢失的从服务器端传送到客户端。考对传送的要求,为保证他们都能满足各自的功能,本系统在设计数据传送时,把实时监控部分和数据保存部分分开,即分别通过不同的途径从服务器端获得数据。对数据保存部分,采用在服务器端先用数组缓存数据,缓存数组中的数据达到一定数量后,由服务器主动一次性把这些数据传送到客户端。具体的方法是:在服务器端,对每一通道的数

5、据先用两个数组交替进行缓存,数据采集服务器传送过来的数据先放进数组1,当数据满一定数量后(例如200个),由数组2接着接收数据,与此同时,新开一个线程,把数组中的数据通过远程方法调用主动传送给客户端。在传送数组时如果网络是中断的,则可利用后面介绍的重连接机制,让客户和服务器重新建立连接,只要在数组2接收200个数据的过程中,连接能够重新建立,把数组1传送成功,就可以保证数据无丢失的传送。这就是本远程监控系统在网络短时中断时,利用数组对数据进行缓存的原理所在。数组2接收满200个 数据后,新开一个线程传送数组2,同时由数组1来接收数据。如此循环。 这种数

6、据传送方式的好处是:一方面客户端的实时监控仍可正常实现,不受数据保存的影响。另一方面,通过在服务器端设置缓冲数组后,解决了因网络短时中断后服务器端的数据没有传送到客户端而丢失的问题。例如,通过测试,在本系统中,服务器采集200个数据所用的时间大约为3秒,那么,假设设置的数组大小为20时,则允许网络有3秒短时中断而不会导致数据的丢失。3.2数据流本远程监控系统采用上述数据传送方式,描述了系统中客户端和RMI服务器之间的数据流动情况。从图中可以看出,应用服务器端设有一个缓冲数据区,经过缓冲数据区后,数据分两路到达客户端,这两路数据分别用于实时监控功能和数据

7、保存功能。具体情况如下:1)数据采集服务器采集的数据先到达应用服务器的缓冲数据区。缓冲数据区中存放着当前数据,当新的数据到达的时候,新的数据将覆盖原来的数据成为当前数据。2)客户端的实时监控模块通过远程方法调用直接从应用服务器的缓冲数据区获得数据,然后用波形显示出来。3)在应用服务器上,缓冲数据区的数据依次放进缓存数组。两缓冲数组交替存放数据,当一个数组的数据满后,新开一个线程把该数组中的数据传送给客户端,与此同时,由另一数组来接收数据。3.3网络短时中断后重连接的实现由于网络的连接情况和拥塞情况具有一定的随机性,很多时候会出现网络抖动的情况,造成客户

8、端与服务器端瞬间失去连接。因而,系统应具有一定的容错性,当网络连接出现瞬时断开的时候,客户端和

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。