发明名称 |
光盘镜像服务器/客户机的两级Cache系统的实现方法 |
摘要 |
本发明公开了一种光盘镜像服务器/客户机的两级Cache系统的实现方法,该方法采用两级Cache结构;在客户端设置一个自适应的Cache和预取线程模块,该模块通过客户端请求接口接收来自操作系统的请求,并进行相应处理;在服务器端设置一个以大块数据为单位进行组织的Cache,及相应的光盘流服务模块,该服务模块接收客户端的请求并以下处理(1)服务器端从网络中接收请求;(2)在Cache中查询该请求是否命中;如果命中,通过网络返回请求数据;否则,从磁盘中取相应请求的数据,再通过网络返回请求数据。测试表明:这种两级Cache系统的数据传输率与请求块的大小基本上没有关系,即在任何请求块大小的情况下,数据传输率都很高;并且采用本系统的数据传输率要大大高于网上邻居的数据传输率。 |
申请公布号 |
CN1212570C |
申请公布日期 |
2005.07.27 |
申请号 |
CN03128024.2 |
申请日期 |
2003.05.23 |
申请人 |
华中科技大学 |
发明人 |
谢长生;谭志虎;易法令;万继光;鲁修卓;任劲 |
分类号 |
G06F12/08;G06F13/00 |
主分类号 |
G06F12/08 |
代理机构 |
华中科技大学专利中心 |
代理人 |
曹葆青 |
主权项 |
1、光盘镜像服务器/客户机的两级Cache系统的实现方法,其特征在于,该方法采用两级Cache结构;在客户端设置一个自适应的Cache和预取线程模块,该模块通过客户端请求接口接收来自操作系统的请求,并进行如下处理:(1)接收操作系统的请求;(2)在Cache中查询该请求是否命中;如果命中则返回请求数据给操作系统,进入(1);如果未命中则转(3);(3)向网络发送预取数据请求,预取数据块的大小根据前面的请求的命中情况确定:如果前面的请求连续命中,假设连续命中n次,则预取数据块的大小为B*(n+1),如果预取占用的Cache超过A时,预取的数据块大小为A;如果未命中,则预取数据块的大小为B*2;其中B为操作系统请求的大小,A为客户端的Cache的大小;(4)返回请求数据给操作系统,进入(1);在服务器端设置一个以大块数据为单位进行组织的Cache,及相应的光盘流服务模块,该服务模块接收客户端的请求并进行以下处理:(1a)服务器端从网络中接收请求;(2a)在Cache中查询该请求是否命中;如果命中,通过网络返回请求数据;否则,从磁盘中取包含预取数据在内的相应请求的数据,然后通过网络返回请求数据。 |
地址 |
430074湖北省武汉市洪山区珞喻路1037号 |