首页> 中国专利> 用于Java消息服务的数据处理方法及Java消息客户端和服务器

用于Java消息服务的数据处理方法及Java消息客户端和服务器

摘要

本发明公开了一种用于Java消息服务的数据处理方法及Java消息客户端和服务器。该用于Java消息服务的数据处理方法包括:Java消息服务客户端从隔离板卡读取数据信息;Java消息服务客户端与Java消息服务器建立连接;以及Java消息服务客户端将读取到的数据信息发送至Java消息服务器。通过本发明,达到了提高网络应用处理的效能的效果。

著录项

  • 公开/公告号CN103607324A

    专利类型发明专利

  • 公开/公告日2014-02-26

    原文格式PDF

  • 申请/专利号CN201310603873.7

  • 发明设计人 杨威;

    申请日2013-11-25

  • 分类号H04L12/26;H04L29/06;

  • 代理机构北京康信知识产权代理有限责任公司;

  • 代理人李志刚

  • 地址 100085 北京市海淀区上地信息产业基地开拓路7号II段一层

  • 入库时间 2024-02-19 22:31:42

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-08-08

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04L12/26 专利号:ZL2013106038737 变更事项:专利权人 变更前:网神信息技术(北京)股份有限公司 变更后:奇安信网神信息技术(北京)股份有限公司 变更事项:地址 变更前:100085 北京市海淀区上地信息产业基地开拓路7号II段一层 变更后:100044 北京市西城区西直门外南路26号院1号楼2层 变更事项:专利权人 变更前:网神科技(北京)有限公司 变更后:网神科技(北京)有限公司

    专利权人的姓名或者名称、地址的变更

  • 2020-01-17

    授权

    授权

  • 2016-10-05

    实质审查的生效 IPC(主分类):H04L12/26 申请日:20131125

    实质审查的生效

  • 2014-02-26

    公开

    公开

说明书

技术领域

本发明涉及通信领域,具体而言,涉及一种用于Java消息服务的数据处理方法及Java消息客户端和服务器。

背景技术

目前,越来越多的企业面临着各种各样的数据集成和系统整合,而根据数据机密性要求,一般要保证高密级网络中的数据不流向低密级网络,并保证低密级网络中的数据能流向高密级网络,而一旦高密级网络中的数据流向低密级网络,就容易造成高密级网络信息的泄露。

为了防止高密级网络信息泄露,在相关技术的相关方案中,一般采用公共对象请求代理体系结构(Commom Object Request Broker Architecture,简称CORBA)和分布式组件对象模型(Distributed Component Object Model,简称DCOM)等远程过程调用协议(Remote Procedure Call,简称RPC)中间件技术以充当单向安隔离网闸来防止高密级网络信息流向低密级网络,上述方案的RPC由于均采用同步处理技术,因此RPC不仅存在健壮性和可扩展性方面的缺点,而且存在消息处理效率较低缺点。

而基于消息的异步处理模型采用非阻塞的调用特性,首先发送者将消息发送给消息服务器,然后消息服务器在合适的时间将消息转发给接收者,这样,消息发送和消息接收是异步的,发送端无需等待发出的消息被接收端接收,并且发送端和接收端的生命周期也可以不相同,另外,发送端可以将消息间接发送给多个接收端,这不仅改善了系统的健壮性和可扩展性,而且异步处理模型在分布式应用上比起同步处理模型更具高效性。Java消息服务(Java Message Service,简称JMS)提供了一种高效的异步消息处理方案,大大提升了业务的应用处理效率,但是目前的单向安全隔离网闸无法实现对JMS应用业务的支持。

针对相关技术中单向安全隔离网闸无法实现应用JMS进行网络消息异步处理的问题,目前尚未提出有效的解决方案。

发明内容

本发明的主要目的在于提供一种用于Java消息服务的数据处理方法及Java消息客户端和服务器,以解决相关技术中单向安全隔离网闸无法实现应用JMS进行网络消息异步处理的问题。

为了实现上述目的,根据本发明的一个方面,提供了一种用于Java消息服务的数据处理方法。该用于Java消息服务的数据处理方法包括:Java消息服务客户端从隔离板卡读取数据信息;Java消息服务客户端与Java消息服务器建立连接;以及Java消息服务客户端将读取到的数据信息发送至Java消息服务器。

进一步地,Java消息服务客户端从隔离板卡读取数据信息包括:Java消息服务客户端从隔离板卡读取数据消息;Java消息服务客户端对数据消息进行处理,剥离数据消息的协议体,得到数据消息的消息类型和消息体;以及Java消息服务客户端在发送消息体的同时,继续从隔离板卡读取数据消息。

进一步地,在Java消息服务客户端对数据消息进行处理,剥离数据消息的协议体,得到数据消息的消息类型之后,数据处理方法还包括:Java消息服务客户端根据消息类型进行异步操作;如果消息类型为连接,则Java消息服务客户端建立与Java消息服务器的连接,并在成功后等待发送数据消息;以及如果消息类型为数据发送,则Java消息服务客户端直接将数据消息发送至Java消息服务器。

为了实现上述目的,根据本发明的另一个方面,提供了一种用于Java消息服务的数据处理方法。该用于Java消息服务的数据处理方法包括:Java消息服务器接收来自Java消息服务客户端的数据信息,其中,Java消息服务客户端从隔离板卡读取数据信息,与Java消息服务器建立连接,并将读取到的数据信息发送至Java消息服务器;以及Java消息服务器对接收到的数据信息进行处理。

进一步地,在Java消息服务器接收来自Java消息服务客户端的数据信息之前,数据处理方法还包括:Java消息服务器监听Java消息服务客户端的连接;Java消息服务器在监听到Java消息服务客户端连接成功之后,通知过滤服务器等待接收来自Java消息服务客户端的数据信息;以及Java消息服务器在通知的同时,继续执行监听。

进一步地,在Java消息服务器在监听到Java消息服务客户端连接成功之后,数据处理方法还包括:Java消息服务器对接收到的来自Java消息服务客户端发送的数据信息,进行协议剥离,并对协议剥离后的数据进行合法性检验;如果校验出协议剥离后的数据违法,则关闭所述连接。

为了实现上述目的,根据本发明的另一方面,提供了一种Java消息服务客户端。该Java消息服务客户端包括:读取单元,用于从隔离板卡读取数据信息;连接单元,用于与Java消息服务器建立连接;以及发送单元,用于将读取到的数据信息发送至Java消息服务器。

进一步地,读取单元包括:读取模块,用于从所述隔离板卡读取数据消息;以及处理模块,用于对数据消息进行处理,剥离数据消息的协议体,得到数据消息的消息类型,其中,读取模块还用于在发送消息类型的同时,继续从隔离板卡读取数据消息。

进一步地,该Java消息服务客户端还包括:异步操作单元,用于根据消息类型进行异步操作;其中,发送单元用于在消息类型为连接时,建立与Java消息服务器的连接,并在成功后等待发送所述数据消息,在消息类型为数据发送时,直接将数据消息发送至Java消息服务器。

为了实现上述目的,根据本发明的另一方面,提供了一种Java消息服务器。该Java消息服务器包括:接收单元,用于接收来自Java消息服务客户端的数据信息,其中,Java消息服务客户端从隔离板卡读取数据信息,与Java消息服务器建立连接,并将读取到的数据信息发送至Java消息服务器;以及处理单元,用于Java消息服务器对接收到的数据信息进行处理。

进一步地,该Java消息服务器还包括:监听单元,用于在Java消息服务器接收来自Java消息服务客户端的数据信息之前,监听Java消息服务客户端的连接;通知单元,用于在监听到Java消息服务客户端连接成功之后,通知过滤服务器等待接收来自Java消息服务客户端的数据信息;以及其中,监听单元还用于在通知的同时,继续执行监听。

进一步地,该Java消息服务器还包括:检验单元,用于在Java消息服务器在监听到Java消息服务客户端连接成功之后,对接收到的来自Java消息服务客户端发送的数据信息,进行协议剥离,并对协议剥离后的数据进行合法性检验;关闭单元,用于在校验出协议剥离后的数据违法时,关闭连接。

通过本发明,采用Java消息服务客户端从隔离板卡读取数据信息;Java消息服务客户端与Java消息服务器建立连接;以及Java消息服务客户端将读取到的数据信息发送至Java消息服务器,解决了相关技术中单向安全隔离网闸无法实现应用JMS进行网络消息异步处理的问题,进而达到了提高网络应用处理的效能的效果。

附图说明

构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明第一实施例的用于Java消息服务的数据处理方法的流程图;

图2是根据本发明第二实施例的用于Java消息服务的数据处理方法的流程图;

图3是根据本发明第三实施例的用于Java消息服务的数据处理方法的流程图;

图4是根据本发明第四实施例的用于Java消息服务的数据处理方法的流程图;

图5是根据本发明第一实施例的Java消息服务客户端的示意图;

图6是根据本发明第二实施例的Java消息服务客户端的示意图;

图7是根据本发明第一实施例的Java消息服务器的示意图;以及

图8是根据本发明第二实施例的Java消息服务器的示意图。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。

为了使本领域的技术人员更好的理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,在本领域普通技术人员没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。

根据本发明的实施例,提供了一种用于Java消息服务的数据处理方法,该用于Java消息服务的数据处理方法用于异步处理网络消息以提高网络应用处理的效能。该用于Java消息服务的数据处理方法可以运行在计算机处理设备上。

需要说明的是,对一个企业而言,一般会应用非信任网络和信任网络,其中,非信任网络即为企业外部网络,简称外网,信任网络即为企业内部网络,简称内网。为了保证外网信息单向流入内网,在本发明实施例中,在JMS客户端和JMS服务器之间设置有光单向安全隔离系统。其中,光单向安全隔离系统可以包括外网中的JMS消息消费者、隔离板卡和内网中的JMS消息生产者。JMS消息消费者可以充当虚拟JMS服务器,并且JJMS客户端与该虚拟JMS服务器可以组成一个客户端服务器组1,JMS消息生产者可以充当虚拟JMS客户端,并且该虚拟JMS客户端与JMS服务器可以组成一个客户端服务器组2,而客户端服务器组1和客户端服务器组2构成JMS客户端、光单向安全隔离系统和JMS服务器。

需要说明的是,以下用Java消息服务客户端代替客户端服务器组2中的虚拟JMS客户端,用Java消息服务器代替客户端服务器组2中的JMS服务器。

图1是根据本发明第一实施例的用于Java消息服务的数据处理方法的流程图。

如图1所示,该方法包括如下的步骤S101至步骤S103:

步骤S101,Java消息服务客户端从隔离板卡读取数据信息。

在本发明实施例中,在Java消息服务客户端从隔离板卡读取数据信息之前,数据信息可以通过如图1所示的客户端服务器组1的作用被摆渡到隔离板卡上。

具体地,首先客户端服务器组1中的JMS客户端向虚拟JMS服务器发送数据信息,需要说明的是,JMS客户端向虚拟JMS服务器发送数据信息之后不需要等待虚拟JMS服务器反馈信息而可以继续向虚拟JMS服务器发送下一条数据信息,这样,减少了JMS客户端的等待时间,提高了JMS客户端发送数据信息的效率。在JMS客户端向虚拟JMS服务器发送数据信息之后,虚拟JMS服务器可以首先构建与JMS客户端的协议连接通道,然后异步接收JMS客户端发送的数据信息,接着再对接收到的数据信息进行协议剥离,并通过协议剥离判断数据信息是否合法。当虚拟JMS服务器判断出数据信息合法时,则将数据信息摆渡到隔离板卡上,否则虚拟JMS服务器判断出数据信息不合法时,则屏蔽数据信息。这样,可以保证数据信息单向流如企业内网,避免了企业内部的机密信息流向外网而造成机密信息的泄露。

需要说明的是,虚拟JMS服务器可以异步接收JMS客户端发送的数据信息,这样,虚拟JMS服务器无需等待JMS客户端,提高了数据信息的接收效率,进而提高了整个系统的应用效能。

需要说明的是,在本发明实施例中,数据信息为协议体数据,数据信息进行协议剥离之后可以包括协议数据头和JMS消息体,其中,协议数据头即为协议体,该协议数据头用于描述JMS客户端发送数据信息的目的,并且协议数据头用于表征数据信息的数据类型,而JMS消息体用于描述数据信息本身的功能。通过协议剥离判断数据信息是否合法可以是通过协议剥离得到的协议数据头判断数据信息是否合法。其中,具体地,可以将协议数据头与存储在预设列表中的预设协议数据头一一对比,当协议数据头与存储在预设列表中的预设协议数据头相同时,则判断出数据信息合法,否则当协议数据头与存储在预设列表中的预设协议数据头不相同时,则判断出数据信息不合法。这样,隔离板卡上储存的数据信息均为合法信息,并且数据信息包括协议数据头和JMS消息体。

在本发明实施例中,Java消息服务客户端从隔离板卡读取数据信息可以是异步随机读取数据信息或者是按照数据信息存储到隔离板卡上的时间顺序异步读取数据信息。

步骤S102,Java消息服务客户端与Java消息服务器建立连接。

在本发明实施例中,与客户端服务器组1中类似,Java消息服务器可以构建与JMS客户端的协议连接通道,进而建立Java消息服务客户端与Java消息服务器之间的连接以进行数据传输。

步骤S103,Java消息服务客户端将读取到的数据信息发送至Java消息服务器。

在本发明实施例中,Java消息服务客户端将读取到的数据信息发送至Java消息服务器可以是Java消息服务客户端将读取到的数据信息异步读取到的数据信息发送至Java消息服务器,这样,提高了数据信息的发送效率,进而提高了整个系统的应用效能。

通过本发明实施例,保证了外网到内网的数据信息的单向流入,而且数据信息可以异步发送和接收,提高了数据信息的发送和接收效率,进而提高了整个系统的应用效能。

图2是根据本发明第二实施例的用于Java消息服务的数据处理方法的流程图。

如图2所示,该用于Java消息服务的数据处理方法包括如下的步骤S201至步骤S205,该实施例可以作为图1所示实施例的优选实施方式。

步骤S201,Java消息服务客户端从隔离板卡读取数据消息。

在本发明实施例中,由于客户端服务器组1中的虚拟JMS服务器存储到隔离板卡上的数据信息为协议体数据信息,因此Java消息服务客户端从隔离板卡读取数据消息为协议体数据消息。其中,协议体数据消息经过协议剥离之后可以包括协议体和JMS消息体,并且协议体用于表征数据消息的数据类型。协议体可以是数据消息的第一字段,并且协议体可以二进制编码表示,不同的协议体对应的数据消息的第一字段的二进制编码不同,另外,协议体还可以对应唯一的标识符,该标识也可以用于识别相应的协议体。

步骤S202,Java消息服务客户端对数据消息进行处理,剥离数据消息的协议体,得到数据消息的消息类型。

需要说明的是,在Java消息服务客户端从隔离板卡读取数据消息之后,可以将数据信息进行协议体和JMS消息体的协议剥离,其中,协议体对应数据消息的数据类型,可以用于判断JMS消息体是否合法,当数据类型为合法的数据类型时,Java消息服务客户端可以将相应的数据信息发送至Java消息服务器,否则数据类型为不合法的数据类型时,Java消息服务客户端可以不将相应的数据信息发送至Java消息服务器。优选地,Java消息服务客户端可以仅仅将合法的数据信息的JMS消息体部分发送至Java消息服务器,这样,不仅可以保留JMS消息体本身的功能属性,而且可以节约Java消息服务器的存储空间。

需要说明的是,在步骤S202之后,该用于Java消息服务的数据处理方法还可以包括:

步骤11,Java消息服务客户端根据消息类型进行异步操作。

步骤12,如果消息类型为连接,则Java消息服务客户端建立与Java消息服务器的连接,并在成功后等待发送数据消息。

步骤13,如果消息类型为数据发送,则Java消息服务客户端直接将数据消息发送至Java消息服务器。

需要说明的是,在本发明实施例中Java消息服务器在将接收到数据消息之后可以将数据信息转发至一个或者多个用户。

步骤S203,Java消息服务客户端在发送JMS消息体的同时,继续从隔离板卡读取数据消息。

步骤S204和步骤S205,分别同图2所示实施例的步骤S102和步骤S103,在此不再赘述。

这样,不用等待Java消息服务器的反馈信息,节省了Java消息服务客户端的等待时间,提高了Java消息服务客户端读取和发送数据信息的效率,进而提高了整个系统的应用效能。

图3是根据本发明第三实施例的用于Java消息服务的数据处理方法的流程图。

如图3所示,该方法包括如下的步骤S301至步骤S302:

步骤S301,Java消息服务器接收来自Java消息服务客户端的数据信息。

在本发明实施例中,Java消息服务器接收来自Java消息服务客户端的数据信息可以是接收来自Java消息服务客户端从隔离板卡读取的数据信息,并且Java消息服务器通过与Java消息客户端之间建立的连接接收来自Java消息服务客户端的数据信息。在Java消息服务器接收来自Java消息服务客户端的数据信息之前,数据信息可以通过如图1所示的客户端服务器组1的作用被摆渡到隔离板卡上。

具体地,首先虚拟JMS服务器接收客户端服务器组1中的JMS客户端发送的数据信息,需要说明的是,虚拟JMS服务器接收到JMS客户端发送的数据信息之后不向JMS客户端反馈信息,而可以继续接收下一条数据信息,这样,减少了虚拟JMS服务器的等待时间,提高了虚拟JMS服务器接收数据信息的效率。在虚拟JMS服务器接收JMS客户端发送的数据信息之后,虚拟JMS服务器可以首先构建与JMS客户端的协议连接通道,然后异步接收JMS客户端发送的数据信息,接着再对接收到的数据信息进行协议剥离,并通过协议剥离判断数据信息是否合法。当虚拟JMS服务器判断出数据信息合法时,则将数据信息摆渡到隔离板卡上,否则虚拟JMS服务器判断出数据信息不合法时,则屏蔽数据信息。这样,可以保证数据信息单向流如企业内网,避免了企业内部的机密信息流向外网而造成机密信息的泄露。

需要说明的是,虚拟JMS服务器可以异步接收JMS客户端发送的数据信息,这样,虚拟JMS服务器无需等待JMS客户端,提高了数据信息的接收效率,进而提高了整个系统的应用效能。

需要说明的是,在本发明实施例中,数据信息为协议体数据,数据信息进行协议剥离之后可以包括协议数据头和JMS消息体,其中,协议数据头即为协议体,该协议数据头用于描述JMS客户端发送数据信息的目的,并且协议数据头用于表征数据信息的数据类型,而JMS消息体用于描述数据信息本身的功能。通过协议剥离判断数据信息是否合法可以是通过协议剥离得到的协议数据头判断数据信息是否合法。其中,具体地,可以将协议数据头与存储在预设列表中的预设协议数据头一一对比,当协议数据头与存储在预设列表中的预设协议数据头相同时,则判断出数据信息合法,否则当协议数据头与存储在预设列表中的预设协议数据头不相同时,则判断出数据信息不合法。这样,隔离板卡上储存的数据信息均为合法信息,并且数据信息包括协议数据头和JMS消息体。

在本发明实施例中,Java消息服务服务器接收Java消息服务客户端从隔离板卡读取的数据信息可以是异步随机接收数据信息或者是接收Java消息服务客户端异步读取的按照数据信息存储到隔离板卡上数据信息。在Java消息服务客户端读取数据信息并建立与Java消息服务器之间的连接之后,Java消息服务器可以接收来自Java消息服务客户端的数据信息。

步骤S302,Java消息服务器对接收到的数据信息进行处理。

在本发明实施例中,Java消息服务器可以对接收到的数据信息进行异步转发,并且Java消息服务器可以将接收到的数据信息转发给一个或者多个用户。

通过本发明实施例,保证了外网到内网的数据信息的单向流入,而且数据信息可以异步发送和接收,提高了数据信息的发送和接收效率,进而提高了整个系统的应用效能。

图4是根据本发明第四实施例的用于Java消息服务的数据处理方法的流程图。

如图4所示,该用于Java消息服务的数据处理方法包括如下的步骤S401至步骤S405,该实施例可以作为图3所示实施例的优选实施方式。

步骤S401,Java消息服务器监听Java消息服务客户端的连接。

在本发明实施例中,Java消息服务器监听Java消息服务客户端的连接可以是监听Java消息服务客户端的连接请求,当Java消息服务客户端发出连接请求并且该连接请求合法时,则进行Java消息服务器与Java消息服务客户端的连接,否则当Java消息服务客户端未发出请求或者发出连接请求但该连接请求不合法时,则不进行Java消息服务器与Java消息服务客户端的连接。

在本发明实施例中,在本发明实施例中,由于客户端服务器组1中的虚拟JMS服务器存储到隔离板卡上的数据信息为协议体数据信息,因此Java消息服务器接收到的Java消息服务客户端从隔离板卡读取的数据消息为协议体数据消息。其中,协议体数据消息经过协议剥离之后可以包括协议体和JMS消息体,并且协议体用于表征数据消息的数据类型。协议体可以是数据消息的第一字段,并且协议体可以二进制编码表示,不同的协议体对应的数据消息的第一字段的二进制编码不同,另外,协议体还可以对应唯一的标识符,该标识也可以用于识别相应的协议体。

Java消息服务器可以剥离数据消息的协议体,得到数据消息的消息类型。例如,该消息类型可以包括连接消息类型和发送消息类型。这样,Java消息服务器可以通过监听Java消息服务客户端发送的消息类型判断是否进行数据连接,当监听到的数据类型为连接消息类型时,则进行Java消息服务器与Java消息服务客户端的连接,否则当监听到的数据类型不为连接消息类型时,则不进行Java消息服务器与Java消息服务客户端的连接。

步骤S402,Java消息服务器在监听到Java消息服务客户端连接成功之后,通知过滤服务器等待接收来自Java消息服务客户端的数据信息。

优选地,在本发明实施例中,在Java消息服务器在监听到Java消息服务客户端连接成功之后,该数据处理方法还包括:

步骤21,Java消息服务器对接收到的来自Java消息服务客户端发送的数据信息,进行协议剥离,并对协议剥离后的数据进行合法性检验。

需要说明的是,在Java消息服务客户端从隔离板卡读取数据消息之后,可以将数据信息进行协议体和JMS消息体的协议剥离,其中,协议体对应数据消息的数据类型,可以用于判断JMS消息体是否合法,当数据类型为合法的数据类型时,J通知过滤服务器等待接收来自Java消息服务客户端的数据信息,否则数据类型为不合法的数据类型时,则不通知过滤服务器等待接收来自Java消息服务客户端的数据信息。优选地,Java消息服务服务器可以仅仅接收合法数据信息的JMS消息体部分,这样,不仅可以保留JMS消息体本身的功能属性,而且可以节约Java消息服务器的存储空间。

步骤22,如果校验出协议剥离后的数据违法,则关闭连接。

步骤S403,Java消息服务器在通知的同时,继续执行所述监听。

在本发明实施例中,Java消息服务器接收Java消息服务客户端发送的数据信息可以是Java消息服务器异步接收Java消息服务客户端发送的数据信息,这样,提高了数据信息的接收效率,进而提高了整个系统的应用效能。

步骤S404和步骤S405,分别同图3所示实施例的步骤S301和步骤S102,在此不再赘述。

通过本发明实施例,保证了外网到内网的数据信息的单向流入,而且数据信息可以异步发送和接收,提高了数据信息的发送和接收效率,进而提高了整个系统的应用效能。

需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

根据本发明的实施例,提供了一种Java消息服务客户端,该Java消息服务客户端用于异步处理网络消息以提高网络应用处理的效能。需要说明的是,本发明实施例所提供的Java消息服务客户端可以用于执行本发明实施例的用于Java消息服务的数据处理方法,本发明实施例的用于Java消息服务的数据处理方法也可以通过本发明实施例的Java消息服务客户端来执行。

图5是根据本发明第一实施例的Java消息服务客户端的示意图。

如图5所示,该Java消息服务客户端包括读取单元10、连接单元20和发送单元30。

读取单元10用于从隔离板卡读取数据信息。在本发明实施例中,在Java消息服务客户端从隔离板卡读取数据信息之前,数据信息可以通过的客户端服务器组1的作用被摆渡到隔离板卡上。

具体地,首先客户端服务器组1中的JMS客户端向虚拟JMS服务器发送数据信息,需要说明的是,JMS客户端向虚拟JMS服务器发送数据信息之后不需要等待虚拟JMS服务器反馈信息而可以继续向虚拟JMS服务器发送下一条数据信息,这样,减少了JMS客户端的等待时间,提高了JMS客户端发送数据信息的效率。在JMS客户端向虚拟JMS服务器发送数据信息之后,虚拟JMS服务器可以首先构建与JMS客户端的协议连接通道,然后异步接收JMS客户端发送的数据信息,接着再对接收到的数据信息进行协议剥离,并通过协议剥离判断数据信息是否合法。当虚拟JMS服务器判断出数据信息合法时,则将数据信息摆渡到隔离板卡上,否则虚拟JMS服务器判断出数据信息不合法时,则屏蔽数据信息。这样,可以保证数据信息单向流如企业内网,避免了企业内部的机密信息流向外网而造成机密信息的泄露。

需要说明的是,虚拟JMS服务器可以异步接收JMS客户端发送的数据信息,这样,虚拟JMS服务器无需等待JMS客户端,提高了数据信息的接收效率,进而提高了整个系统的应用效能。

需要说明的是,在本发明实施例中,数据信息为协议体数据,数据信息进行协议剥离之后可以包括协议数据头和JMS消息体,其中,协议数据头即为协议体,该协议数据头用于描述JMS客户端发送数据信息的目的,并且协议数据头用于表征数据信息的数据类型,而JMS消息体用于描述数据信息本身的功能。通过协议剥离判断数据信息是否合法可以是通过协议剥离得到的协议数据头判断数据信息是否合法。其中,具体地,可以将协议数据头与存储在预设列表中的预设协议数据头一一对比,当协议数据头与存储在预设列表中的预设协议数据头相同时,则判断出数据信息合法,否则当协议数据头与存储在预设列表中的预设协议数据头不相同时,则判断出数据信息不合法。这样,隔离板卡上储存的数据信息均为合法信息,并且数据信息包括协议数据头和JMS消息体。

在本发明实施例中,Java消息服务客户端通过读取单元10从隔离板卡读取数据信息可以是异步随机读取数据信息或者是按照数据信息存储到隔离板卡上的时间顺序异步读取数据信息。

连接单元20用于与Java消息服务器建立连接。在本发明实施例中,与客户端服务器组1中类似,Java消息服务器可以通过连接单元20构建与JMS客户端的协议连接通道,进而建立Java消息服务客户端与Java消息服务器之间的连接以进行数据传输。

发送单元30用于将读取到的数据信息发送至Java消息服务器。在本发明实施例中,Java消息服务客户端通过发送单元30将读取到的数据信息发送至Java消息服务器可以是Java消息服务客户端将读取到的数据信息异步读取到的数据信息发送至Java消息服务器,这样,提高了数据信息的发送效率,进而提高了整个系统的应用效能。

通过本发明实施例,保证了外网到内网的数据信息的单向流入,而且数据信息可以异步发送和接收,提高了数据信息的发送和接收效率,进而提高了整个系统的应用效能。

图6是根据本发明第二实施例的Java消息服务客户端的示意图。

如图6所示,该实施例可以作为图5所示实施例的优选实施方式,该实施例的Java消息服务客户端包括第一实施例的读取单元10、连接单元20和发送单元30,其中,读取单元10包括读取模块101和处理模块102。

连接单元20和发送单元30的作用与第一实施例中的相同,在此不再赘述。

读取模块101用于从隔离板卡读取数据消息。

在本发明实施例中,由于客户端服务器组1中的虚拟JMS服务器存储到隔离板卡上的数据信息为协议体数据信息,因此Java消息服务客户端从隔离板卡读取数据消息为协议体数据消息。其中,协议体数据消息经过协议剥离之后可以包括协议体和JMS消息体,并且协议体用于表征数据消息的数据类型。协议体可以是数据消息的第一字段,并且协议体可以二进制编码表示,不同的协议体对应的数据消息的第一字段的二进制编码不同,另外,协议体还可以对应唯一的标识符,该标识也可以用于识别相应的协议体。

处理模块102用于对数据消息进行处理,剥离数据消息的协议体,得到数据消息的消息类型,其中,读取模块还用于在将消息类型发送消息类型的同时,继续从隔离板卡读取所述数据消息。

需要说明的是,在Java消息服务客户端从隔离板卡读取数据消息之后,可以将数据信息进行协议体和JMS消息体的协议剥离,其中,协议体对应数据消息的数据类型,可以用于判断JMS消息体是否合法,当数据类型为合法的数据类型时,Java消息服务客户端可以将相应的数据信息发送至Java消息服务器,否则数据类型为不合法的数据类型时,Java消息服务客户端可以不将相应的数据信息发送至Java消息服务器。优选地,Java消息服务客户端可以仅仅将合法的数据信息的JMS消息体部分发送至Java消息服务器,这样,不仅可以保留JMS消息体本身的功能属性,而且可以节约Java消息服务器的存储空间。

在本发明实施例中,该客户端还可以包括异步操作单元,该异步操作单元用于根据消息类型进行异步操作。其中,发送单元30用于在消息类型为连接时,建立与Java消息服务器的连接,并在成功后等待发送数据消息,在消息类型为数据发送时,直接将数据消息发送至Java消息服务器。

需要说明的是,在本发明实施例中Java消息服务器在将接收到数据消息之后可以将数据信息转发至一个或者多个用户。

这样,不用等待Java消息服务器的反馈信息,节省了Java消息服务客户端的等待时间,提高了Java消息服务客户端读取和发送数据信息的效率,进而提高了整个系统的应用效能。

根据本发明的实施例,提供了一种Java消息服务器,该Java消息服务器用于异步处理网络消息以提高网络应用处理的效能。需要说明的是,本发明实施例所提供的Java消息服务器可以用于执行本发明实施例的用于Java消息服务的数据处理方法,本发明实施例的用于Java消息服务的数据处理方法也可以通过本发明实施例的Java消息服务器来执行。

图7是根据本发明第一实施例的Java消息服务器的示意图。

如图7所示,该Java消息服务器包括接收单元40和处理单元50。

接收单元40用于接收来自Java消息服务客户端的数据信息。其中,Java消息服务客户端从隔离板卡读取数据信息,与Java消息服务器建立连接,并将读取到的数据信息发送至Java消息服务器。

在本发明实施例中,Java消息服务器接收来自Java消息服务客户端的数据信息可以是接收来自Java消息服务客户端从隔离板卡读取的数据信息,并且Java消息服务器通过与Java消息客户端之间建立的连接接收来自Java消息服务客户端的数据信息。在Java消息服务器接收来自Java消息服务客户端的数据信息之前,数据信息可以通过如的客户端服务器组1的作用被摆渡到隔离板卡上。

具体地,首先虚拟JMS服务器接收客户端服务器组1中的JMS客户端发送的数据信息,需要说明的是,虚拟JMS服务器接收到JMS客户端发送的数据信息之后不向JMS客户端反馈信息,而可以继续接收下一条数据信息,这样,减少了虚拟JMS服务器的等待时间,提高了虚拟JMS服务器接收数据信息的效率。在虚拟JMS服务器接收JMS客户端发送的数据信息之后,虚拟JMS服务器可以首先构建与JMS客户端的协议连接通道,然后异步接收JMS客户端发送的数据信息,接着再对接收到的数据信息进行协议剥离,并通过协议剥离判断数据信息是否合法。当虚拟JMS服务器判断出数据信息合法时,则将数据信息摆渡到隔离板卡上,否则虚拟JMS服务器判断出数据信息不合法时,则屏蔽数据信息。这样,可以保证数据信息单向流如企业内网,避免了企业内部的机密信息流向外网而造成机密信息的泄露。

需要说明的是,虚拟JMS服务器可以异步接收JMS客户端发送的数据信息,这样,虚拟JMS服务器无需等待JMS客户端,提高了数据信息的接收效率,进而提高了整个系统的应用效能。

需要说明的是,在本发明实施例中,数据信息为协议体数据,数据信息进行协议剥离之后可以包括协议数据头和JMS消息体,其中,协议数据头即为协议体,该协议数据头用于描述JMS客户端发送数据信息的目的,并且协议数据头用于表征数据信息的数据类型,而JMS消息体用于描述数据信息本身的功能。通过协议剥离判断数据信息是否合法可以是通过协议剥离得到的协议数据头判断数据信息是否合法。其中,具体地,可以将协议数据头与存储在预设列表中的预设协议数据头一一对比,当协议数据头与存储在预设列表中的预设协议数据头相同时,则判断出数据信息合法,否则当协议数据头与存储在预设列表中的预设协议数据头不相同时,则判断出数据信息不合法。这样,隔离板卡上储存的数据信息均为合法信息,并且数据信息包括协议数据头和JMS消息体。

在本发明实施例中,Java消息服务服务器接收Java消息服务客户端从隔离板卡读取的数据信息可以是异步随机接收数据信息或者是接收Java消息服务客户端异步读取的按照数据信息存储到隔离板卡上数据信息。在Java消息服务客户端读取数据信息并建立与Java消息服务器之间的连接之后,Java消息服务器可以接收来自Java消息服务客户端的数据信息。

处理单元50用于Java消息服务器对接收到的数据信息进行处理。在本发明实施例中,Java消息服务器可以通过处理单元50对接收到的数据信息进行异步转发,并且Java消息服务器可以通过处理单元50将接收到的数据信息转发给一个或者多个用户。

通过本发明实施例,保证了外网到内网的数据信息的单向流入,而且数据信息可以异步发送和接收,提高了数据信息的发送和接收效率,进而提高了整个系统的应用效能。

图8是根据本发明第二实施例的Java消息服务器的示意图。

如图8所示,该实施例可以作为图7所示实施例的优选实施方式,该实施例的Java消息服务器除了包括第一实施例的接收单元40和处理单元50之外,还包括监听单元60和通知单元70。

接收单元40和处理单元50的作用与第一实施例中的相同,在此不再赘述。

监听单元60用于在Java消息服务器接收来自Java消息服务客户端的数据信息之前,监听Java消息服务客户端的连接。

在本发明实施例中,Java消息服务器监听Java消息服务客户端的连接可以是监听Java消息服务客户端的连接请求,当Java消息服务客户端发出连接请求并且该连接请求合法时,则进行Java消息服务器与Java消息服务客户端的连接,否则当Java消息服务客户端未发出请求或者发出连接请求但该连接请求不合法时,则不进行Java消息服务器与Java消息服务客户端的连接。

在本发明实施例中,在本发明实施例中,由于客户端服务器组1中的虚拟JMS服务器存储到隔离板卡上的数据信息为协议体数据信息,因此Java消息服务器接收到的Java消息服务客户端从隔离板卡读取的数据消息为协议体数据消息。其中,协议体数据消息经过协议剥离之后可以包括协议体和JMS消息体,并且协议体用于表征数据消息的数据类型。协议体可以是数据消息的第一字段,并且协议体可以二进制编码表示,不同的协议体对应的数据消息的第一字段的二进制编码不同,另外,协议体还可以对应唯一的标识符,该标识也可以用于识别相应的协议体。

Java消息服务器可以剥离数据消息的协议体,得到数据消息的消息类型。例如,该消息类型可以包括连接消息类型和发送消息类型。这样,Java消息服务器可以通过监听Java消息服务客户端发送的消息类型判断是否进行数据连接,当监听到的数据类型为连接消息类型时,则进行Java消息服务器与Java消息服务客户端的连接,否则当监听到的数据类型不为连接消息类型时,则不进行Java消息服务器与Java消息服务客户端的连接。

优选地,在本发明实施例中,在Java消息服务器在监听到Java消息服务客户端连接成功之后,该服务器还可以包括检验单元和关闭单元。

检验单元用于在Java消息服务器在监听到Java消息服务客户端连接成功之后,对接收到的来自Java消息服务客户端发送的数据信息,进行协议剥离,并对协议剥离后的数据进行合法性检验。需要说明的是,在Java消息服务客户端从隔离板卡读取数据消息之后,可以将数据信息进行协议体和JMS消息体的协议剥离,其中,协议体对应数据消息的数据类型,可以用于判断JMS消息体是否合法,当数据类型为合法的数据类型时,J通知过滤服务器等待接收来自Java消息服务客户端的数据信息,否则数据类型为不合法的数据类型时,则不通知过滤服务器等待接收来自Java消息服务客户端的数据信息。优选地,Java消息服务服务器可以仅仅接收合法数据信息的JMS消息体部分,这样,不仅可以保留JMS消息体本身的功能属性,而且可以节约Java消息服务器的存储空间。

关闭单元用于在校验出协议剥离后的数据违法时,关闭所述连接。

通知单元70用于在监听到Java消息服务客户端连接成功之后,通知过滤服务器等待接收来自Java消息服务客户端的数据信息。其中,监听单元还用于在通知的同时,继续执行监听。

在本发明实施例中,Java消息服务器接收Java消息服务客户端发送的数据信息可以是Java消息服务器异步接收Java消息服务客户端发送的数据信息,这样,提高了数据信息的接收效率,进而提高了整个系统的应用效能。

通过本发明,保证了外网到内网的数据信息的单向流入,而且数据信息可以异步发送和接收,提高了数据信息的发送和接收效率,进而提高了整个系统的应用效能。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号