一种共享内存的方法、服务器及系统技术方案

技术编号:9768275 阅读:120 留言:0更新日期:2014-03-15 23:33
本发明专利技术实施例公开了一种共享内存的方法、服务器及系统,涉及通信领域,应用于包括访问服务器和被访问服务器的至少两个服务器构成的服务器组,通过NT端口和预设编址信息实现多个服务器间相互共享内存,而且不需要额外的中间设备即可实现共享内存,降低了成本。本发明专利技术实施例采用的方法为:访问服务器获取待共享数据的地址信息,其中,待共享数据的地址信息包括待共享数据所在的服务器的本地内存地址;根据该待共享数据的地址信息及预设的编址信息获取与被访问服务器之间的信息传输路径;经信息传输路径向访问服务器发送访问请求;接收被访问服务器根据访问请求,经信息传输路径发送的待共享数据。

【技术实现步骤摘要】
—种共享内存的方法、服务器及系统
本专利技术涉及通信领域,尤其涉及一种共享内存的方法、服务器及系统。
技术介绍
在分布式存储或分布式计算系统中,通常需要在多个系统间共享内存,以实现多个系统间资源的相互利用。现有技术中共享内存的方法的特点为:1、在一台服务器上的不同系统或者两台服务器之间实现内存共享;2、被共享的数据首先存储在中间件中才可以被访问;3、不同系统需要经过一系列协议编码才可以共享内存;4、通过以太网传输数据。在实现上述共享内存的过程中,专利技术人发现现有技术中至少存在如下问题:1、无法处理大规模集群的应用模式;2、使用中间件增加了额外的成本,且数据传输时需要经过中间件,降低了数据传送效率;3、使用协议编码增加了协议的开销;4、通过以太网传输数据的带宽小,且共通信协议需要消耗部分带宽,导致整体数据交换性能低。
技术实现思路
本专利技术的实施例提供一种共享内存的方法、服务器及系统,应用于包括访问服务器和被访问服务器的至少两个服务器构成的服务器组,通过NT端口和预设编址信息实现多个服务器间相互共享内存,而且不需要额外的中间设备即可实现共享内存,降低了成本。为达到上述目的,本专利技术的实施例采用如下技术方案:—方面,本专利技术实施例提供一种共享内存的方法,应用于包括访问服务器和被访问服务器的至少两个服务器构成的服务器组,所述服务器组中的各服务器通过NT (Non-Transparency)端口依次连接,包括:访问服务器获取待共享数据的地址信息,所述待共享数据的地址信息包括所述待共享数据所在的服务器的本地内存地址;所述访问服务器根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间的信息传输路径;所述访问服务器经所述信息传输路径向所述被访问服务器发送访问请求;[0011 ] 所述访问服务器接收所述被访问服务器根据所述访问请求,经所述信息传输路径发送的所述待共享数据。优选的,所述预设编址信息,包括:每一个所述服务器的本地内存地址,且所述每一个服务器的本地内存地址按照所述服务器的连接顺序依次由小到大或者由大到小排序,相应的,所述访问服务器根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间的信息传输路径,包括:根据所述预设的编址信息中的所述服务器的本地内存地址的排序,确定所述被访问服务器和所述访问服务器之间的依次相连的服务器作为所述信息传输路径。优选的,每个所述服务器内保存与其相邻的服务器的本地内存地址,相应的,所述被访问服务器根据所述访问请求,经所述信息传输路径向所述访问服务器发送所述待共享数据,包括:根据所述信息传输路径上每个服务器上保存的与各自相邻的服务器的本地内存地址,依次经过所述信息传输路径上每个服务器将所述待共享数据发送给所述访问服务器。优选的,所述服务器组包含至少三个服务器,且通过PCIE交换装置的NT端口依次连接成环形,相应的,所述访问服务器根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间的信息传输路径,包括:所述访问服务器根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间最短的信息传输路径。优选的,所述服务器组还包括中间服务器,所述方法还包括:当所述信息传输路径上的任意一个服务器故障时,与所述故障的服务器相邻的两个服务器分别将与所述故障的服务器连接的NT端口切换至所述中间服务器,构成新的信息传输路径。另一方面,本专利技术实施例提供一种服务器,应用于通过NT端口依次连接的服务器组,当所述服务器作为访问服务器时,包括:第一获取单元,用于获取待共享数据的地址信息,所述待共享数据的地址信息包括所述待共享数据所在的服务器的本地内存地址;第二获取单元,用于根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间的信息传输路径;发送单元,用于经所述信息传输路径向所述被访问服务器发送访问请求;接收单元,用于接收所述被访问服务器根据所述访问请求,经所述信息传输路径发送的所述待共享数据。优选的,所述预设编址信息,包括:每一个所述服务器的本地内存地址,且所述每一个服务器的本地内存地址按照所述服务器的连接顺序依次由小到大或者由大到小排序,相应的,所述第二获取单元还用于:根据所述预设的编址信息中的所述服务器的本地内存地址的排序,确定所述被访问服务器和所述访问服务器之间的依次相连的服务器作为所述信息传输路径。优选的,当所述服务器组包含至少三个服务器,且通过NT端口依次连接成环形时,所述第二获取单元还用于:所述访问服务器根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间最短的信息传输路径。优选的,所述服务器组还包括中间服务器,所述服务器还包括:切换单元,用于在所述信息传输路径上,与所述服务器直接连接的服务器故障时,将与所述故障的服务器连接的NT端口切换至所述中间服务器,构成新的信息传输路径。另一方面,本专利技术实施例提供一种共享内存的方法,应用于通过NT端口依次连接的服务器组,当所述服务器作为被访问服务器时,包括:发送单元,用于根据所述信息传输路径上每个服务器上保存的与各自相邻的服务器的本地内存地址,依次经过所述信息传输路径上每个服务器将所述待共享数据发送给访问服务器;所述访问服务器用于获取待共享数据的地址信息,根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间的信息传输路径,经所述信息传输路径向所述被访问服务器发送访问请求;所述待共享数据的地址信息包括所述待共享数据所在的服务器的本地内存地址。另一方面,本专利技术实施例提供一种共享内存的系统,所述系统包括:包括访问服务器和被访问服务器的至少两个服务器构成的服务器组,所述服务器组中的各服务器通过NT端口依次连接,其中,所述访问服务器,用于获取待共享数据的地址信息,根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间的信息传输路径,经所述信息传输路径向所述被访问服务器发送访问请求,其中,所述待共享数据的地址信息包括所述待共享数据所在的服务器的本地内存地址;所述被访问服务器,用于根据所述访问服务器发送的访问请求,经所述信息传输路径向所述访问服务器发送所述待共享数据。优选的,所述预设编址信息,包括:每一个所述服务器的本地内存地址,且所述每一个服务器的本地内存地址按照所述服务器的连接顺序依次由小到大或者由大到小排序,相应的,所述访问服务器,还用于:根据所述预设的编址信息中的所述服务器的本地内存地址的排序,确定所述被访问服务器和所述访问服务器之间的依次相连的服务器作为所述信息传输路径。优选的,每个所述服务器内保存与其相邻的服务器的本地内存地址,相应的,所述被访问服务器,还用于:根据所述信息传输路径上每个服务器上保存的与各自相邻的服务器的本地内存地址,依次经过所述信息传输路径上每个服务器将所述待共享数据发送给所述访问服务器。优选的,所述服务器组包含至少三个服务器,且通过NT端口依次连接成环形,相应的,所述访问服务器,还用于:根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间最短的信息传输路径。优选的,所述系统还包括,中间服务器,用于当所述信息传输路径上的任意一个服务器故障时,与所述故障的服务器相邻的两个服务器分别连接,构成新本文档来自技高网...

【技术保护点】
一种共享内存的方法,其特征在于,应用于包括访问服务器和被访问服务器的至少两个服务器构成的服务器组,所述服务器组中的各服务器通过NT(Non?Transparency)端口依次连接,所述方法包括:访问服务器获取待共享数据的地址信息,所述待共享数据的地址信息包括所述待共享数据所在的服务器的本地内存地址;所述访问服务器根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间的信息传输路径;所述访问服务器经所述信息传输路径向所述被访问服务器发送访问请求;所述访问服务器接收所述被访问服务器根据所述访问请求,经所述信息传输路径发送的所述待共享数据。

【技术特征摘要】
1.一种共享内存的方法,其特征在于,应用于包括访问服务器和被访问服务器的至少两个服务器构成的服务器组,所述服务器组中的各服务器通过NT(Non-TransParency)端口依次连接,所述方法包括: 访问服务器获取待共享数据的地址信息,所述待共享数据的地址信息包括所述待共享数据所在的服务器的本地内存地址; 所述访问服务器根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间的信息传输路径; 所述访问服务器经所述信息传输路径向所述被访问服务器发送访问请求; 所述访问服务器接收所述被访问服务器根据所述访问请求,经所述信息传输路径发送的所述待共享数据。2.根据权利要求1所述的共享内存的方法,其特征在于,所述预设编址信息,包括:每一个所述服务器的本地内存地址,且所述每一个服务器的本地内存地址按照所述服务器的连接顺序依次由小到大或者由大到小排序,相应的, 所述访问服务器根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间的信息传输路径,包括: 根据所述预设的编址信息中的所述服务器的本地内存地址的排序,确定所述被访问服务器和所述访问服务器之间的依次相连的服务器作为所述信息传输路径。3.根据权利要求 1或2所述的共享内存的方法,其特征在于,每个所述服务器内保存与其相邻的服务器的本地内存地址,相应的, 所述被访问服务器根据所述访问请求,经所述信息传输路径向所述访问服务器发送所述待共享数据,包括: 根据所述信息传输路径上每个服务器上保存的与各自相邻的服务器的本地内存地址,所述被访问服务器依次经过所述信息传输路径上每个服务器将所述待共享数据发送给所述访问服务器。4.根据权利要求1-3任一项所述的共享内存的方法,所述服务器组包含至少三个服务器,且通过NT端口依次连接成环形,相应的, 所述访问服务器根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间的信息传输路径,包括: 所述访问服务器根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间最短的信息传输路径。5.根据权利要求4所述的共享内存的方法,其特征在于,所述服务器组还包括中间服务器,所述方法还包括: 当所述信息传输路径上的任意一个服务器故障时,与所述故障的服务器相邻的两个服务器分别将与所述故障的服务器连接的NT端口切换至所述中间服务器,构成新的信息传输路径。6.一种服务器,其特征在于,应用于通过NT端口依次连接的服务器组,当所述服务器作为访问服务器时,包括: 第一获取单元,用于获取待共享数据的地址信息,所述待共享数据的地址信息包括所述待共享数据所在的服务器的本地内存地址;第二获取单元,用于根据所述待共享数据的地址信息及预设的编址信息获取与所述被访问服务器之间的信息传输路径;发送单元,用于经所述信息传输路径向所述被访问服务器发送访问请求; 接收单元,用于接收所述被访问服务器根据所述访问请求,经所述信息传输路径发送的所述待共享数据。7.根据权利要求6所述的服务器,其特征在于,所述预设编址信息,包括:每一个所述服务器的本地内存地址,且所述每一个服务器的本地内存地址按照所述服务器的连接顺序依次由小到大或者由大到小排序,相应的, 所述第二获取单元还用于:根据所述预设的编址信息中的所述服务器的本地内存...

【专利技术属性】
技术研发人员:王镇
申请(专利权)人:深圳市腾讯计算机系统有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1