胶片12:服务器-服务器通信模式 |

|
- WebWork中消息传递的实现
- a)当前Web技术(HTTP/CGI)和
- b)下一代多线程计算服务器
- 此处描绘了Web服务器之间的点对点通信.两种不同的实现方式是:a)基于现有的Web服务器技术;b)基于线程内存映射(thread
memory mapped)以求得高性能,我们希望在将来的Web计算服务器中实现.下面我们对应着图来介绍这两种实现方式
- a)当今的Web服务器模式:(1)M1锁定S1磁盘上的O1;(2)M1向S2发送HTTP的POST消息,消息头含有M2的URL,消息体含有O1的URL;(3)S2通过CGI激活M2并将O1的URL作为命令行参数传给M2;(4)M2向S1发送HTTP的GET命令,命令头部含有O1的URL;(5)S1从其文件树中取出O1;(6)S1将O1的内容发送给M2以结束GET请求;(7)M2用O1重写S2上的I2,如果I2被锁定,则M2等待(阻塞);(8)当O1被存放到S2的磁盘上以后,M2返回一个传输结束的应答给M1来结束POST请求;(9)M1解锁O1
- 计算服务器(将来的Web服务器)模式:(1)M1锁定其内存对象O1;(2)M1检查与M2的套接字连接是否已经在M1的连接表中,如果在,转向(5),否则,M1请求与S2建立连接并向M2发送相应的请求消息;(3)S2激活M2并应答;(4)M1接收应答消息并将新的连接加入到自己的连接表中;(5)M1取得O1的句柄;(6)M1采用套接字库调用的方式将O1写到M2中;(7)M2采用套接字库调用的方式读取O1.如果I2为空闲,则O1缓冲区的内容将被直接拷贝到I2的缓冲区;如果I2被锁定,M2则创建O1的副本并终止;(8)M2发送结束应答给M1;(9)M1对O1解锁

Copyright: NPACT |

|