当前位置: 首页 > 专利查询>东北大学专利>正文

一种基于异步消息的云存储服务方法技术

技术编号:22266693 阅读:57 留言:0更新日期:2019-10-10 17:10
本发明专利技术提出一种基于异步消息的云存储服务方法,包括:进行验证登录;客户端发送项目编号ProjectID到云服务器;客户端发送数据到云服务器,数据被保存到本地临时文件目录,将数据发送给消息处理进程中;客户端发送消息到消息队列,消息队列接收到消息后,将该消息按照时间顺序排列在消息队列中;开启消息处理进程,将本地临时文件目录中的数据调用到消息处理进程中,当进程结束后,将所有数据保存到云存储器和数据库中;客户端接收到云服务器消息队列的提示,断开此次连接。本发明专利技术提高用户存储数据效率,避免在数据量比较大或者操作时间长的情况下,产生回话连接超时的问题,还能作为插件安装到第三方系统中,方便对已有系统集成和数据迁移。

A Cloud Storage Service Method Based on Asynchronous Messages

【技术实现步骤摘要】
一种基于异步消息的云存储服务方法
本专利技术属于云计算
,具体涉及一种基于异步消息的云存储服务方法。
技术介绍
随着医学影像学的发展,临床与影像结合诊断的方式被广泛接受。当前,医疗单位将医学影像数据存储在PACS(图像归档与通信系统)系统中,采用高性能、大容量的磁盘阵列和磁带库等存储介质。但医学影像技术的不断发展更新,影像的高分辨率、高精度和新型影像设备结构的多样性导致医学影像数据呈现出规模庞大、结构多样、复杂多变的特点,要实现远程诊断传统PACS系统存在以下几个问题:1)存储代价高昂:对于医学影像这种体数据来说,一个CT检查影像200-500M,一个标准病理检查可达5G。图像数据量达到了TB、PB级别,用磁盘阵列和磁带库等存储介质使用、维护、存储这些庞大的数据代价高昂,扩展灵活性差;2)影像数据无法共享:PACS系统使用的是医院的局域网,无法通过网络与其他医疗机构进行数据的传输与共享。随时随地访问影像数据成为医生和患者的迫切需求,他们希望不仅仅局限于本地电脑,而是能够远程通过web浏览器、手机客户端甚至可以通过手机扫描二维码查看医学影像。云存储以海量、在线、灾备、安全防护、可共享的优势被寄予厚望。对于医疗机构而言,影像云存储是大势所趋,能便捷、高效地解决现实就医过程中医院和患者的诸多难题。HDFS分布式文件系统以其较高容错性、伸缩性被各大公司和科研机构用来架构云存储服务,适合大数据的存储,可运行在低廉的机器上,是一种构建可靠、性价比高的云存储可行方案。HDFS采用Master/Slave的主从架构,一个HDFS集群包括一个Namenode节点和多个Datanode节点。Namenode是一个管理文件命名空间和调节客户端访问文件的主服务器,Datanode采用冗余备份机制存储数据块。因此,HDFS分布式文件系统架构云存储具有以下特性:1)支持大数据的存储和处理:大数据是指达到GB、TB级别的数据,目前在实际应用中HDFS已经能够支持PB级别的数据存储;2)流式访问数据:HDFS采用流式访问数据即一次写入,多次读取。数据一旦写入不能修改,只能追加,它能有效保证数据的一致性。这一特性符合医学影像的特点;3)可扩展性高:医疗机构只要按照需求采购服务器,安装好操作系统连接上网络,云存储系统会自动识别,自动把容量加入到存储池中,一次性解决存储扩容问题;4)容错性高:数据自动保存多个副本。HDFS通过增加副本的形式,提高容错性。某一个副本丢失以后,此副本可以自动恢复。由上述可知,医学影像存于云端,可有效降低传统PACS系统运营成本,可解决数据共享问题。但是HDFS适合高吞吐量的场景即在某一时间内写入大量的数据,不适合低延时数据存储。在临床中,采用HDFS架构的云存储服务存储影像数据这种特征的大数据,处理起来需要消耗时间,同时,影像数据的处理经过排序、提取头文件、文件压缩一系列步骤也会增加数据存储的时间。在这种情况下,用户进行数据存储时,会出现会话失效情况,导致用户体验感差。因此HDFS的实时性差,不符合临床应用。
技术实现思路
基于上述技术问题,本文提出了一种基于异步消息的云存储服务方法,设计了一种基于消息队列的并行存储数据方法,适应分布式文件系统上高性能存储效率。设计了一种基于TLS(安全传输层协议)的数据传输方法,该方法实现了第三方系统中数据的可靠迁移。一种基于异步消息的云存储服务方法,具体步骤如下:步骤1:客户端发送用户信息到云服务器,进行验证登录,若登录验证成功,则云服务器返回登录成功信息,转到步骤2,若登录验证不成功,则云服务器返回登录失败信息,并重新进行登录验证;步骤2:用户正常登录后,客户端发送项目编号ProjectID到云服务器,云服务器在数据库中查找是否存在项目编号ProjectID,若不存在,则创建一个项目编号ProjectID并保存在数据库中,同时云服务器发送已经创建项目编号信息给客户端;若存在,则不必创建项目编号ProjectID,同时云服务器发送已有项目编号信息给客户端;步骤3:客户端发送数据到云服务器,数据被保存到本地临时文件目录,并将数据发送给消息处理进程中,且云服务器发送数据被保存信息给客户端;步骤4:客户端发送消息到消息队列,消息队列接收到消息后,将该消息按照时间顺序排列在消息队列中,并发送提示给客户端收到消息;同时开启消息处理进程,并将本地临时文件目录中的数据调用到消息处理进程中,当进程结束后,将所有数据保存到云存储器和数据库中;步骤5:客户端接收到云服务器消息队列的提示,则断开此次连接,注销与云服务器的连接。所述消息队列,包括消息头和消息体;所述消息头包括:ProjectID、Encryption、Msg_type、Src_path、Des_path、Msg_flag、Activityid、Time、UserID;所述ProjectID,为项目编号,在数据库中是唯一的标识;每个project代表一个人,ProjectID相当于一个人的身份证号,是唯一的。所述Encryption,为判断数据是否加密的标志,即判断数据是否来自第三方系统。若Encryption的值为0表示该数据是本地数据,若Encryption的值为1表示该数据是第三方系统所传数据。所述Msg_type,为消息类型,消息队列根据消息类型将消息传送到对应消息队列;所述消息类型,具体包括:在线影像数据存储消息、在线影像数据与报告数据存储消息、离线影像数据存储消息、离线影像数据与报告数据存储消息;所述Src_path,为源路径,医学影像在本地的存储路径;所述Des_path,为目的路径,影像数据要上传的最终路径。所述Msg_flag,为判断消息是否处理成功的标志,若Msg_flag的值为1表示消息已经成功处理,若值为0表示消息处理失败。所述Activityid,一次采集影像数据对应一个Activityid,即一个人在某一天存储的所有影像数据,Activityid能够确定具体的日期;所述ProjectID,一个ProjectID能够对应患者的多次就诊数据,通过ProjectID和Activityid唯一确定用户存储的影像序列。所述Time,为创建消息的时间;所述UserID,发送消息的用户标识ID,用于保存该用户的数据存储空间命名。所述步骤4,具体步骤如下:步骤4.1:用户通过客户端发出数据存储请求,生产消息,客户端发送消息到消息队列;步骤4.2:消息队列接收到消息后,将该消息按照时间顺序排列在消息队列中,每个队列中的消息按照消息头和消息体的结构排列,并发送提示给客户端收到消息;步骤4.3:消息队列根据消息不同类型,按照时间顺序,将消息推送到不同的消息进程中;步骤4.4:消息进程处理时,从本地临时文件目录中调用数据,按照时间顺序排列数据,提取数据头信息,并将头信息发送到数据库保存,同时将文件压缩,并将压缩文件发送到云存储器;步骤4.5:若消息进程处理中出现错误,则将该消息重新放置与消息队列中,重新排队进行处理,转到步骤4.3中;所述客户端,还可以为第三方系统,若客户端为第三方系统,则本地临时文件目录为第三方临时文件目录,且该目录中的数据通过TLS协议进行通讯,并用对称加密算法对数据进行加密;有益技术效果:本发本文档来自技高网
...

【技术保护点】
1.一种基于异步消息的云存储服务方法,其特征在于,具体步骤如下:步骤1:客户端发送用户信息到云服务器,进行验证登录,若登录验证成功,则云服务器返回登录成功信息,转到步骤2,若登录验证不成功,则云服务器返回登录失败信息,并重新进行登录验证;步骤2:用户正常登录后,客户端发送项目编号ProjectID到云服务器,云服务器在数据库中查找是否存在项目编号ProjectID,若不存在,则创建一个项目编号ProjectID并保存在数据库中,同时云服务器发送已经创建项目编号信息给客户端;若存在,则不必创建项目编号ProjectID,同时云服务器发送已有项目编号信息给客户端;步骤3:客户端发送数据到云服务器,数据被保存到本地临时文件目录,并将数据发送给消息处理进程中,且云服务器发送数据被保存信息给客户端;步骤4:客户端发送消息到消息队列,消息队列接收到消息后,将该消息按照时间顺序排列在消息队列中,并发送提示给客户端收到消息;同时开启消息处理进程,并将本地临时文件目录中的数据调用到消息处理进程中,当进程结束后,将所有数据保存到云存储器和数据库中;步骤5:客户端接收到云服务器消息队列的提示,则断开此次连接,注销与云服务器的连接。...

【技术特征摘要】
1.一种基于异步消息的云存储服务方法,其特征在于,具体步骤如下:步骤1:客户端发送用户信息到云服务器,进行验证登录,若登录验证成功,则云服务器返回登录成功信息,转到步骤2,若登录验证不成功,则云服务器返回登录失败信息,并重新进行登录验证;步骤2:用户正常登录后,客户端发送项目编号ProjectID到云服务器,云服务器在数据库中查找是否存在项目编号ProjectID,若不存在,则创建一个项目编号ProjectID并保存在数据库中,同时云服务器发送已经创建项目编号信息给客户端;若存在,则不必创建项目编号ProjectID,同时云服务器发送已有项目编号信息给客户端;步骤3:客户端发送数据到云服务器,数据被保存到本地临时文件目录,并将数据发送给消息处理进程中,且云服务器发送数据被保存信息给客户端;步骤4:客户端发送消息到消息队列,消息队列接收到消息后,将该消息按照时间顺序排列在消息队列中,并发送提示给客户端收到消息;同时开启消息处理进程,并将本地临时文件目录中的数据调用到消息处理进程中,当进程结束后,将所有数据保存到云存储器和数据库中;步骤5:客户端接收到云服务器消息队列的提示,则断开此次连接,注销与云服务器的连接。2.根据权利要求1所述基于异步消息的云存储服务方法,其特征在于,所述消息队列,包括消息头和消息体;所述消息头包括:ProjectID、Encryption、Msg_type、Src_path、Des_path、Msg_flag、Activityid、Time、UserID;所述ProjectID,为项目编号,在数据库中是唯一的标识;所述Encryption,为判断数据是否加密的标志,即判断数据是否来自第三方系统;若Encryption的值为0表示该数据是本地数据,若Encryption的值为1表示该数据是第三方系统所传数据;所述Msg_type,为消息类型,消息队列根据消息类型将消息传送到对应消息队列;所述消息类型,具体包括...

【专利技术属性】
技术研发人员:栗伟冯朝路金慈赵大哲闵新
申请(专利权)人:东北大学
类型:发明
国别省市:辽宁,21

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

1