可是B/S体系结构也不是万能的,由于其工作机制的限制,在某些领域,以前采用B/S体系结构就很难实现要求功能。典型情况下, Web页面和大多数Web应用使用了一种称为请求/响应的工作机制: o 使用者点击一个超级链接,或是提交一个表单等。 o 浏览器向服务器发送请求。 o 服务器启动一个会话。 o 服务器经过处理后,把数据发送给浏览器。 o 服务器关闭会话,浏览器显示数据。 我们可以看出,使用B/S体系结构设计软件时,无法回避两个限制:被动性与滞后性。首先,使用者必须通过浏览器请求,服务端才能进行响应,在某些领域,如及时监控中, 需要服务端在特定情况下,主动发送数据给客户端,而使用传统B/S体系结构技术,实现该目的就很困难。其次,服务端每次请求都必须启动一个会话,加上服务端处理与网络传送所消耗的时间,这自然就形成了客户端的滞后性。 也许有些读者,会提出异议,聊天室就是采用B/S体系结构的,为什么服务端能够每几秒钟,就把聊天室里各人的发言发送过来呢?其实,聊天室还是采用B/S体系结构的请求/响应机制,只不过客户端每过几秒就发送一次请求而已,好奇的读者可以看一下聊天室网页的源码,可以在源码的头部找到这样一条语句: 它的作用就是每2秒钟发送一次请求。 在设计软件时,往往要对工业生产系统进行及时监控,随时了解生产系统的运行情况,可是在以前,如果采用Web方式就很难保证及时性,同时,每几秒就给服务端发送请求,既浪费网络资源,又给系统带来额外负担。如果硬要采用B/S体系结构,当然也有方法,采用Applet,由于Java安全的限制,必须对每台客户端进行安全配置,可这样与C/S体系结构又有什么不同了呢,已经丧失了B/S体系结构的“瘦客户”的优点。 可自从Flash 5发布后,其中的XML与XMLSocket技术很好地解决了B/S体系结构被动性与滞后性的限制,同时没有了Java的安全限制,新的Flash MX中对此又有了很大的增强。本文就将介绍利用XML与XMLSocket技术对生产系统进行及时监控,同时为了测试方便,介绍了一个模拟服务端的程序。(本文所有介绍,都将依据Falsh的最新版本Flash MX。) (责任编辑:admin) |