访问量: 139 次浏览
1.B/S模式的通信流程
(1)用户打开计箅机中的浏览器。
(2)输入一个URL,浏览器将生成一个HTTP 请求并把它发送到指定的Web服务器。
(3)服务器将主页发回,浏览器将其显示在屏幕上。
(4)用户阅读相关信息,可继续查找有关信息, 向浏览器发出请求。
(5)浏览器发送一个请求给相应的服务器, 将把由URL标识的文档/文件返回屏幕。
(6)眼务器收到请求后,査看本站点是否有该文档, 若有,把该文档放人响应信息中返回浏览器。
(7)浏览器收到响应,査看头文件格式, 判断是否能直接显示,如能就显示出来, 否则调用对应的帮助应用程序或外挂程序处理。
(8)浏览器等待用户的下一条指令, 而服务器准备接受来自浏览器的下一条请求。
2.不同类型的工作方式
(1)简单式。基于浏览器的B/S利用HTML在 用户的计算机上表示信息。利用HTMU几乎任何计算机上的 编程者都可以毫不困难地提供信息。 Web服务器实际上是发布静态HTML文本页面和图片。 在静态网页中,Web浏览器需要一个HTML页时就提交 一个URL地址到Web服务器。Web服务器从Internet上检索 到所需的本地或远程的网页,并将所需页返回到Web浏览器上。 浏览器打开一个和服务器的连接, 服务器返回页面结果并关闭连接。 有时也可使用Javaapplets,ActiveX和JavaBeans来加强表达能力。 但这种加强不是通过页就是通过构件来实现的, 和处理数据的服务器毫无关系。一个Applet, 通常由Java写成,是从服务器下载到浏览器的小程序, 它在浏览器中执行。Applet给网页带来了动态特性。 可将Javaapplet和静态页面放置于同一个应用中。 这部分结构只是一个简单的客户机/服务器应用。 Web浏览器是结构中的客户机。它是运行在前端客户机的软件, 使用户可以访问Web。Netscape,Explore是常用的浏览器。 Web浏览器显示由HTML写成的文档、图片、声音和图像。 而Web服务器则是将Web页发送至浏览器的具有特殊目的的文件服务器。 该模型只限于使用HTTP协议进行通信。 从知识体系结构和知识网络的角度来看,这种模型已不能满足要求。
(2)交互式。在打开与服务器的连接以传输数据以前, 显示获取用户输人的表单、文本域、按钮。 HTTP服务器将输入信息传递给客户服务器程序或脚本进行处理, 接着返回浏览器一个新的显示页面, 最后中断浏览器和服务器的该次连接。 该模型扩展了第一类模型,加强了标准的Web站点来访问数据。 这个模型允许用户从各种后端服务器中请求信息。 HTTP服务器将信息传递给服务器程序或某个脚本进行处理, Web服务器再从DBMS服务器中检索数据, 然后把结果页面返回浏览器,最后中断浏览器和服务器的连接。 通过使用HTTP作为中间件,调用CGI服务器程序或脚本, 该模型支持简单的客户机/服务器通信方式。 由于每一个浏览器和服务器间的通信都要建立一个连接, 因此相对于服务器资源而言,这种模型造价昂贵。 表格通常用基本的HTML代码和CGI编程。 Web服务器就像检索一个普通的HTML页一样, 将检索到的表格返回到浏览器中并显示之。 在用户填完并提交表格后,就会返回到服务器中执行CGI程序。 一个典型的CGI程序从表格中取出键入的值汇入文件或 组成一个包含键人值的E-mail信息将它送出。 CGI是一种从浏览器向服务器执行程序的机制。 一个服务器端可执行CGI可由Web服务器操作系统支持的语言如C, C++等编写,许多Web服务器也支持一个窗口CGI, 这样可用VB编写CGI程序。从被访问的数据来看, 该模型所访问的数据往往是只读的,如帮助文件、 文档、用户信息等。这些非核心数据一般没有处理功能, 总是处在低访问率上。这里已是一个三层结构了, 浏览器(Client)透过中间层软件CGI间接操作Server程序, CGI与Server端的数据库互相沟通,将査询结果传送至Client端, 而不是一味地将Server端的资料全部接受过来。 这个三层结构还是相当粗糙。
(3)分布式。将机构中目前的基础设施与分布式数据源结合起来, 这种模型最终会代替真正开放的客户机/服务器应用程序。 无须下载HTML页面,客户程序是由可下载的Java编写的, 并可以在任何支持Java的浏览器上执行的Applet。 当HTTP服务器将含有Java小应用程序的页面下载到浏览器时, 小应用程序在浏览器中运行并通过构件(component)支持的通信协议 (IIOP,DCOM)与传输服务器上的小脤务(servlet)通信会话。 这些小服务按构件的概念撰写,收到信息后,经过JDBC, ODBC或本地方法向数据库服务器发出请求, 数据库服务器接到命令后,将结果再传送给servlet, 最后将结果送至浏览器显示出来。可以看出, 这里已出现了一个比较明晰的中间层, client端的应用程序已分为两层:GUI界面(Applet)和中间层软件。 关于中间层将在下文中介绍。小应用程序除了支持如HTTP, TCP/IP和安全套接字层(SSL)外, 它可以和其他服务器通信以便提供对各种数据库的访问。 同时,这种模型已不再局限于使用Web服务器和 HTTP协议与数据服务器进行通信了。 使用除HTTP协议以外的其他协议(DOOM,DOT)是今后的发展方向之一。 DCOM是COM构件间的通信协议,IIOP是CORBA(公共对象请求代理结构) 构件的通信协议。DOOM和CORBA分别是由微软和 OMG协会制定的关于分布式构件的通信协议。 IIOP和DCOM均是建立在TCP/IP之上的协议。 如两个局域网内用DCOM传递构件信息, 但如果将信息透过互连网传到另一方, 只要互联网使用的是TCP/IP,就可以传递。 在前两种模型中,网络上所传递的信息绝大多数是资料, 而该模型引入了分布式计算构件的概念, 使得函数也可以在网络上传递。这样,在网络环境下, 不同的电脑之间,不同的操作系统之间的应用程序就可以彼此沟通。 最终达到“与平台无关”、“与程序语言无关”、 “与网络通信协议无关”。 该模型的真正意义在于可使浏览器连接到各种信息数据源中, 不仅可以检索文件, 而且只要打开用户屏幕上的主页即可对目标数据进行分析。