【技术实现步骤摘要】
一种数据缓存方法、装置、终端设备和存储介质
本专利技术涉及计算机
,特别是涉及一种数据缓存方法、装置、终端设备和存储介质。
技术介绍
随着网络科技的快速发展,视频会议、视频教学等双向通信在用户的生活、工作、学习等方面广泛普及。IOCP框架模式支持大并发数据,每一路网络通信连接都需要消耗一定的内存空间来承载从I/O层获取的网络数据,单路资源相对渺小,当并发量达到一定值后,所需的内存空间庞大到服务器无法承载,这样限制了整个IOCP框架的大并发数量和服务设备性能。通常,在进行业务处理时,建立好的每一路网络通信连接并不是实时地进行业务处理,只会占用一小部分的内存资源,而大部分的网络通信连接所申请的内存资源都处于休眠、停滞状态,并没有真正被利用起来。
技术实现思路
鉴于上述问题,提出了本专利技术实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据缓存方法、装置、终端设备和存储介质。第一个方面,本专利技术实施例提供一种数据缓存方法,应用于服务器,所述方法包括:通过预 ...
【技术保护点】
1.一种数据缓存方法,其特征在于,应用于服务器,所述方法包括:/n通过预先建立的IOCP模型,获取目标终端发送的数据包;/n确定所述数据包的大小、及与所述目标终端对应的虚拟容器中的可用缓存区大小;/n若所述数据包的大小大于所述可用缓存区大小,则调用动态缓存区对可用缓存区进行扩容,获得扩展缓存区;/n将所述数据包存入所述扩展缓存区。/n
【技术特征摘要】
1.一种数据缓存方法,其特征在于,应用于服务器,所述方法包括:
通过预先建立的IOCP模型,获取目标终端发送的数据包;
确定所述数据包的大小、及与所述目标终端对应的虚拟容器中的可用缓存区大小;
若所述数据包的大小大于所述可用缓存区大小,则调用动态缓存区对可用缓存区进行扩容,获得扩展缓存区;
将所述数据包存入所述扩展缓存区。
2.根据权利要求1所述的方法,其特征在于,在所述通过预先建立的IOCP模型,获取目标终端发送的数据包之前,所述方法还包括:
预先创建多个虚拟容器;
当IOCP模型中的监控线程检测到目标终端发送数据包时,将所述虚拟容器与所述目标终端进行关联,形成所述目标终端与所述虚拟容器之间的网络通道,以使所述目标终端与服务器进行数据传输。
3.根据权利要求1所述的方法,其特征在于,所述若所述数据包的大小大于所述可用缓存区大小,则调用动态缓存区对所述可用缓存区进行扩容,获得扩展缓存区,包括:
根据所述数据包的大小与所述可用的缓存区大小的差值,确定需要扩容的缓存区大小;
根据所述需要扩容的缓存区大小,调用所述动态缓存区对所述可用缓存区进行扩容,获得所述扩展缓存区,其中,所述动态缓存区包括除了为各个终端对应的虚拟容器预先申请的预设缓存区之外的缓存区和/或其他终端对应的虚拟容器的预设缓存区。
4.根据权利要求1所述的方法,其特征在于,所述可用缓存区是根据写入到所述扩展缓存区中的数据包占用的缓存区和已经从所述扩展缓存区中读取数据包后的释放的缓存区确定的。
5.根据权利要求1所述的方法,其特征在于,所述将所述数据包存入所述扩展缓存区,包括:
对所述终端发送的数据包进行解析后,将解析后的数据写入到所述扩展缓存区,其中,所述解析后的数据中至少包...
【专利技术属性】
技术研发人员:谢文龙,李云鹏,吕亚亚,杨春晖,
申请(专利权)人:视联动力信息技术股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。