CN103595812A - 一种发送Web服务消息的方法及装置 - Google Patents
一种发送Web服务消息的方法及装置 Download PDFInfo
- Publication number
- CN103595812A CN103595812A CN201310596452.6A CN201310596452A CN103595812A CN 103595812 A CN103595812 A CN 103595812A CN 201310596452 A CN201310596452 A CN 201310596452A CN 103595812 A CN103595812 A CN 103595812A
- Authority
- CN
- China
- Prior art keywords
- web service
- service message
- message
- preserved
- transmission
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种发送Web服务消息的方法及装置,所述方法包括:当监听到存在Web服务消息时,对监听到的Web服务消息进行拦截;将所述Web服务消息进行保存;将所保存的Web服务消息异步发送至对应的Web服务接收端。本发明实现了Web服务消息的异步发送,提高了系统的处理效率,减轻了Web服务接收端高并发下的负担。
Description
技术领域
本发明实施例涉及互联网技术领域,尤其涉及一种发送Web服务消息的方法及装置。
背景技术
SOA(service-oriented architecture,面向服务的体系结构)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它独立于实现服务的硬件平台、操作系统和编程语言,这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。
Web服务是SOA的一种实现方式。Web服务是一个平台独立的、松耦合的、自包含的、基于可编程的Web的应用程序,是用于开发分布式的互操作的应用程序。在某些特定的业务场景下,Web服务的发送端会同时将大量的Web服务消息发送至Web服务的接收端,例如,在一些购物订单处理过程中,仓库系统(发送端)需向订单系统(接收端)回发大量的订单处理结果(Web服务消息)。
在对现有技术的研究和实践过程中,发明人发现现有技术至少存在以下问题:在Web服务发送端应用复杂且不稳定的网络环境下,如果Web服务发送端同时发送大量的Web服务消息,会导致诸多Web服务消息不可达、加重Web服务接收端高并发下的负担等异常。
发明内容
本发明提供一种发送Web服务消息的方法及装置,以实现Web服务消息的异步发送,提高了系统的处理效率,减轻了Web服务接收端高并发下的负担。
第一方面,本发明实施例提供了一种发送Web服务消息的方法,该方法包括:
当监听到存在Web服务消息时,对监听到的Web服务消息进行拦截;
将所述Web服务消息进行保存;
将所保存的Web服务消息异步发送至对应的Web服务接收端。
第二方面,本发明实施例还提供了一种发送Web服务消息的装置,该装置包括:
消息拦截模块,用于当监听到存在Web服务消息时,对监听到的Web服务消息进行拦截;
消息保存模块,用于将所述Web服务消息进行保存;
消息发送模块,用于将所保存的Web服务消息异步发送至对应的Web服务接收端。
本发明通过对监听到的Web服务消息进行拦截并保存,然后将所保存的Web服务消息异步发送至对应的Web服务接收端,实现了Web服务消息的异步发送,提高了系统的处理效率,减轻了Web服务接收端高并发下的负担。
附图说明
图1是本发明实施例一提供的一种发送Web服务消息的方法的流程示意图;
图2是本发明实施例二提供的一种发送Web服务消息的方法的流程示意图;
图3是本发明实施例三提供的一种发送Web服务消息的装置的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
图1为本发明实施例一提供的一种发送Web服务消息的方法的流程示意图,本实施例可适用于Web服务发送端向Web服务接收端同时发送大量的Web服务消息的情形,例如,在一些购物订单处理过程中,仓库系统向订单系统发送大量的订单处理结果的情形。该方法可以由Web服务发送端来执行,Web服务系统可以是基于Apache的软件系统,具体包括如下步骤:
步骤101、当监听到存在Web服务消息时,对监听到的Web服务消息进行拦截。
在本实施例中,Web服务发送端实时监听是否存有向Web服务接收端发送的Web服务消息,如果是,对所监听到的所有的Web服务消息进行截获,以中断这些Web服务消息的发送。其中,Web服务消息可以是SOAP(Simple ObjectAcess Protocal,简单对象访问协议)消息,即采用XML(Extensible MarkupLanguage,扩展性标记语言)格式、基于SOAP通信传输协议的服务消息。
步骤102、将所拦截到的Web服务消息进行保存。
在监听到存在Web服务消息,并对其进行拦截之后,Web服务发送端将所拦截的Web服务消息保存至本地存储器。其中,Web服务消息可以是以数据库的存储格式存储在本地存储器所创建的数据库中。考虑到关系型数据库具备安全性高、功耗较低,且支持新的硬件技术的灵活性强等优点,优选的,所述数据库为关系型数据库。
步骤103、将所保存的Web服务消息异步发送至对应的Web服务接收端。
在本实施例中,Web服务发送端实时或者每隔预设时间查询一次所保存的Web服务消息,将所保存的Web服务消息延迟一定时间后,异步发送至对应的Web服务接收端。
其中,将所保存的Web服务消息异步发送至对应的Web服务接收端可为:定时从所保存的Web服务消息中获取N条Web服务消息,将所获取的Web服务消息发送至对应的Web服务接收端,其中N为大于等于1的整数。在本实施例中,定时获取的时间和Web服务消息的条数可由Web服务发送端根据自身的处理能力、处理速度进行设定。
当然,本领域的普通技术人员应理解,还可通过其它具体的实施方式来实现所保存的Web服务消息的异步发送。例如,将所保存的Web服务消息异步发送至对应的Web服务接收端还可为:获取所保存的所有的Web服务消息及与各条Web服务消息对应的属性信息;根据所获取的属性信息,将所保存的Web服务消息分时发送至对应的Web服务接收端。其中,属性信息包括拦截时间信息、大小信息、和/或业务信息。
此处,根据所获取的属性信息,将所保存的Web服务消息分时发送至对应的Web服务接收端,又可进一步为:按照拦截时间前后的顺序,将所保存的Web服务消息依次发送至对应的Web服务接收端;或按照消息大小的顺序,将所保存的Web服务消息依次发送至对应的Web服务接收端;或按照业务优先级高低的顺序,将所保存的Web服务消息依次发送至对应的Web服务接收端。
本实施例的技术方案,通过对监听到的Web服务消息进行拦截并保存,然后将所保存的Web服务消息异步发送至对应的Web服务接收端,实现了Web服务消息的异步发送,在Web服务消息过多时进行分时处理,提高了系统的处理效率,减轻了Web服务接收端高并发下的负担。
在上述技术方案的基础上,在将所保存的Web服务消息异步发送至对应的Web服务接收端之后,还包括:判断所发送的Web服务消息是否发送成功,当该Web服务消息发送成功时,删除所保存的该Web服务消息;当该Web服务消息发送失败时,重新发送该Web服务消息。这样,不仅能够减轻本地存储器的存储负担,而且还可以提高发送Web服务消息的成功率。
图2是本发明实施例二提供的一种发送Web服务消息的方法的流程示意图。本实施例在上述实施例一的基础上,采用CXF拦截器对所监听到的Web服务消息进行拦截,对所拦截的Web服务消息经过转换过程后通过HTTP(HyperTextTransfer Protocol,超文本传输协议)POST方式进行封装而后发送。参见图2,所述方法包括:
步骤201、监听本地Web服务发送接口是否存在Web服务消息,如果是,执行步骤S202,如果否,则继续执行步骤201的监听操作。
步骤202、采用CXF拦截器从该Web服务发送接口获取所监听到的Web服务消息,并中断该Web服务发送接口向Web服务接收端发送的所监听到的Web服务消息。
步骤203、对所获取到的Web服务消息按照关系型数据库存储格式进行转换,并将转换后的Web服务消息保存至关系型数据库。
步骤204、将所保存的转换后的Web服务消息逆转换为原始格式下的Web服务消息,对逆转换后的Web服务消息通过HTTP POST方式进行封装。
步骤205、将所封装后的Web服务消息异步发送至对应的Web服务接收端。
本实施例的技术方案,直接采用CXF拦截器对所监听到的Web服务消息进行拦截,使得提高了Web服务发送端的执行效率和拦截的准确性;对Web服务消息通过HTTP POST方式进行封装,基于HTTP协议以POST的方式发送数据,可以使得发送方式更加灵活,能够实现Web服务消息为序列化的SOAP消息的发送,避免了因采用GET方式发送Web服务消息时,只能把Web服务消息在URL中发送出去,如果参数过多则很不方便,同时还会受到URL长度的限制的弊端。
以下为本发明提供的发送Web服务消息的装置实施例,该实施例与上述提供的发送Web服务消息的方法实施例属于一个总的发明构思,在该实施例中未详尽描述的细节内容,可以参考上述发送Web服务消息的方法实施例。
图3是本发明实施例三提供的一种发送Web服务消息的装置的结构示意图,本实施例可适用于Web服务发送端向Web服务接收端同时发送大量的Web服务消息的情形,该装置可集成于Web服务发送端的电子设备中,具体包括如下模块:消息拦截模块301,用于当监听到存在Web服务消息时,对监听到的Web服务消息进行拦截;消息保存模块302,用于将所述Web服务消息进行保存;消息发送模块303,用于将所保存的Web服务消息异步发送至对应的Web服务接收端。
在本实施例的一个具体实施方式中,消息发送模块303具体用于:定时从所保存的Web服务消息中获取N条Web服务消息,将所获取的Web服务消息发送至对应的Web服务接收端;其中,N为大于等于1的整数。
在本实施例的一个具体实施方式中,消息发送模块303包括:获取单元,用于获取所保存的所有的Web服务消息及与各条Web服务消息对应的属性信息;发送单元,用于根据所获取的属性信息,将所保存的Web服务消息分时发送至对应的Web服务接收端。
属性信息包括拦截时间信息、大小信息、和/或业务信息,则消息发送模块203中的发送单元具体用于:按照拦截时间前后的顺序,将所保存的Web服务消息依次发送至对应的Web服务接收端;或按照消息大小的顺序,将所保存的Web服务消息依次发送至对应的Web服务接收端;或按照业务优先级高低的顺序,将所保存的Web服务消息依次发送至对应的Web服务接收端。
本实施例的技术方案,通过对监听到的Web服务消息进行拦截并保存,然后将所保存的Web服务消息异步发送至对应的Web服务接收端,实现了Web服务消息的异步发送,提高了系统的处理效率,减轻了Web服务接收端高并发下的负担。
在上述技术方案的基础上,上述装置还包括判断模块、删除模块和消息重发模块(未示出),其中,判断模块,用于在消息发送模块303将所保存的Web服务消息异步发送至对应的Web服务接收端之后,判断所述Web服务消息是否发送成功;删除模块,用于当所述Web服务消息发送成功时,删除所保存的所述Web服务消息;消息重发模块,还用于当所述Web服务消息发送失败时,重新发送所述Web服务消息。
在上述技术方案的基础上,消息拦截模块301,包括:监听单元,用于监听本地Web服务发送接口是否存在Web服务消息;拦截单元,用于当监听单元监听到存在Web服务消息时,采用CXF拦截器从所述Web服务发送接口获取所述Web服务消息,并中断所述Web服务发送接口向Web服务接收端发送所述Web服务消息。
在上述技术方案的基础上,消息保存模块302具体用于:对消息拦截模块301所拦截到的Web服务消息按照关系型数据库存储格式进行转换,并将转换后的Web服务消息保存至关系型数据库。消息发送模块303具体用于:将所保存的转换后的Web服务消息逆转换为原始格式下的Web服务消息;对逆转换后的Web服务消息通过HTTP POST方式进行封装,并异步发送至对应的Web服务接收端。
本发明实施例可以用计算机装置可执行的程序来实现,从而可以将它们存储在存储装置中由处理器来执行,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等;或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (16)
1.一种发送Web服务消息的方法,其特征在于,包括:
当监听到存在Web服务消息时,对监听到的Web服务消息进行拦截;
将所述Web服务消息进行保存;
将所保存的Web服务消息异步发送至对应的Web服务接收端。
2.根据权利要求1所述的发送Web服务消息的方法,其特征在于,所述当监听到存在Web服务消息时,对监听到的Web服务消息进行拦截,包括:
监听本地Web服务发送接口是否存在Web服务消息;
若是,则采用CXF拦截器从所述Web服务发送接口获取所述Web服务消息,并中断所述Web服务发送接口向Web服务接收端发送所述Web服务消息。
3.根据权利要求1或2所述的发送Web服务消息的方法,其特征在于,所述将所述Web服务消息进行保存,包括:
对所述Web服务消息按照关系型数据库存储格式进行转换,并将转换后的Web服务消息保存至关系型数据库。
4.根据权利要求3所述的发送Web服务消息的方法,其特征在于,所述将所保存的Web服务消息异步发送至对应的Web服务接收端,包括:
将所保存的转换后的Web服务消息逆转换为原始格式下的Web服务消息;
对逆转换后的Web服务消息通过HTTP POST方式进行封装,并异步发送至对应的Web服务接收端。
5.根据权利要求1所述的发送Web服务消息的方法,其特征在于,所述将所保存的Web服务消息异步发送至对应的Web服务接收端,包括:
定时从所保存的Web服务消息中获取N条Web服务消息,将所获取的Web服务消息发送至对应的Web服务接收端;
其中,N为大于等于1的整数。
6.根据权利要求1所述的发送Web服务消息的方法,其特征在于,所述将所保存的Web服务消息异步发送至对应的Web服务接收端,包括:
获取所保存的所有的Web服务消息及与各条Web服务消息对应的属性信息;
根据所获取的属性信息,将所保存的Web服务消息分时发送至对应的Web服务接收端。
7.根据权利要求6所述的发送Web服务消息的方法,其特征在于,所述属性信息包括拦截时间信息、大小信息、和/或业务信息,则所述根据所获取的属性信息,将所保存的Web服务消息分时发送至对应的Web服务接收端,包括:
按照拦截时间前后的顺序,将所保存的Web服务消息依次发送至对应的Web服务接收端;或
按照消息大小的顺序,将所保存的Web服务消息依次发送至对应的Web服务接收端;或
按照业务优先级高低的顺序,将所保存的Web服务消息依次发送至对应的Web服务接收端。
8.根据权利要求1所述的发送Web服务消息的方法,其特征在于,在所述将所保存的Web服务消息异步发送至对应的Web服务接收端之后,还包括:
判断所述Web服务消息是否发送成功;
当所述Web服务消息发送成功时,删除所保存的所述Web服务消息;
当所述Web服务消息发送失败时,重新发送所述Web服务消息。
9.一种发送Web服务消息的装置,其特征在于,包括:
消息拦截模块,用于当监听到存在Web服务消息时,对监听到的Web服务消息进行拦截;
消息保存模块,用于将所述Web服务消息进行保存;
消息发送模块,用于将所保存的Web服务消息异步发送至对应的Web服务接收端。
10.根据权利要求9所述的发送Web服务消息的装置,其特征在于,所述消息拦截模块,包括:
监听单元,用于监听本地Web服务发送接口是否存在Web服务消息;
拦截单元,用于当所述监听单元监听到存在Web服务消息时,采用CXF拦截器从所述Web服务发送接口获取所述Web服务消息,并中断所述Web服务发送接口向Web服务接收端发送所述Web服务消息。
11.根据权利要求9或10所述的发送Web服务消息的装置,其特征在于,所述消息保存模块具体用于:
对所述Web服务消息按照关系型数据库存储格式进行转换,并将转换后的Web服务消息保存至关系型数据库。
12.根据权利要求11所述的发送Web服务消息的装置,其特征在于,所述消息发送模块具体用于:
将所保存的转换后的Web服务消息逆转换为原始格式下的Web服务消息;
对逆转换后的Web服务消息通过HTTP POST方式进行封装,并异步发送至对应的Web服务接收端。
13.根据权利要求9所述的发送Web服务消息的装置,其特征在于,所述消息发送模块具体用于:
定时从所保存的Web服务消息中获取N条Web服务消息,将所获取的Web服务消息发送至对应的Web服务接收端;
其中,N为大于等于1的整数。
14.根据权利要求9所述的发送Web服务消息的装置,其特征在于,所述消息发送模块,包括:
获取单元,用于获取所保存的所有的Web服务消息及与各条Web服务消息对应的属性信息;
发送单元,用于根据所获取的属性信息,将所保存的Web服务消息分时发送至对应的Web服务接收端。
15.根据权利要求14所述的发送Web服务消息的装置,其特征在于,所述属性信息包括拦截时间信息、大小信息、和/或业务信息,则所述发送单元具体用于:
按照拦截时间前后的顺序,将所保存的Web服务消息依次发送至对应的Web服务接收端;或
按照消息大小的顺序,将所保存的Web服务消息依次发送至对应的Web服务接收端;或
按照业务优先级高低的顺序,将所保存的Web服务消息依次发送至对应的Web服务接收端。
16.根据权利要求9所述的发送Web服务消息的装置,其特征在于,所述装置还包括判断模块、删除模块和消息重发模块;
所述判断模块,用于在所述消息发送模块将所保存的Web服务消息异步发送至对应的Web服务接收端之后,判断所述Web服务消息是否发送成功;
所述删除模块,用于当所述Web服务消息发送成功时,删除所保存的所述Web服务消息;
所述消息重发模块,用于当所述Web服务消息发送失败时,重新发送所述Web服务消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310596452.6A CN103595812A (zh) | 2013-11-21 | 2013-11-21 | 一种发送Web服务消息的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310596452.6A CN103595812A (zh) | 2013-11-21 | 2013-11-21 | 一种发送Web服务消息的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103595812A true CN103595812A (zh) | 2014-02-19 |
Family
ID=50085790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310596452.6A Pending CN103595812A (zh) | 2013-11-21 | 2013-11-21 | 一种发送Web服务消息的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103595812A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104601696A (zh) * | 2015-01-13 | 2015-05-06 | 北京京东尚科信息技术有限公司 | 服务处理方法、服务调用框架、装置和架构 |
CN111367688A (zh) * | 2020-02-28 | 2020-07-03 | 京东数字科技控股有限公司 | 一种业务数据的处理方法和装置 |
CN112015815A (zh) * | 2020-08-27 | 2020-12-01 | 中国平安财产保险股份有限公司 | 数据同步方法、装置及计算机可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7624047B1 (en) * | 2002-07-31 | 2009-11-24 | Amazon Technologies, Inc. | Managing server load by varying responses to requests for dynamically-generated web pages |
CN102088398A (zh) * | 2009-12-08 | 2011-06-08 | 华为技术有限公司 | Web并发事件处理方法及装置 |
US8521614B1 (en) * | 2010-08-16 | 2013-08-27 | Amazon Technologies, Inc. | Metadata-driven merchant feed processing system |
-
2013
- 2013-11-21 CN CN201310596452.6A patent/CN103595812A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7624047B1 (en) * | 2002-07-31 | 2009-11-24 | Amazon Technologies, Inc. | Managing server load by varying responses to requests for dynamically-generated web pages |
CN102088398A (zh) * | 2009-12-08 | 2011-06-08 | 华为技术有限公司 | Web并发事件处理方法及装置 |
US8521614B1 (en) * | 2010-08-16 | 2013-08-27 | Amazon Technologies, Inc. | Metadata-driven merchant feed processing system |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104601696A (zh) * | 2015-01-13 | 2015-05-06 | 北京京东尚科信息技术有限公司 | 服务处理方法、服务调用框架、装置和架构 |
CN104601696B (zh) * | 2015-01-13 | 2018-05-15 | 北京京东尚科信息技术有限公司 | 服务处理方法、服务调用系统、装置和系统 |
CN111367688A (zh) * | 2020-02-28 | 2020-07-03 | 京东数字科技控股有限公司 | 一种业务数据的处理方法和装置 |
CN112015815A (zh) * | 2020-08-27 | 2020-12-01 | 中国平安财产保险股份有限公司 | 数据同步方法、装置及计算机可读存储介质 |
CN112015815B (zh) * | 2020-08-27 | 2024-02-02 | 中国平安财产保险股份有限公司 | 数据同步方法、装置及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8825749B2 (en) | Method of tracking offline user interaction in a rendered document on a mobile device | |
CN106657394A (zh) | 一种基于物联网大数据的设备信息采集系统及方法 | |
CN105512201A (zh) | 数据收集和加工方法及装置 | |
CN105912703A (zh) | 数据存储方法、查询方法及装置 | |
CN107404480A (zh) | 一种流媒体数据的传输方法、存储介质和流媒体服务器 | |
CN102196373A (zh) | 一种短信告警系统及短信告警方法 | |
CN104866528B (zh) | 多平台数据采集方法及系统 | |
CN103209115A (zh) | 一种消息发送系统 | |
CN109547524A (zh) | 基于物理网的用户行为存储方法、装置、设备及存储介质 | |
CN109992406A (zh) | 图片请求方法、响应图片请求的方法及客户端 | |
CN103595812A (zh) | 一种发送Web服务消息的方法及装置 | |
CN103368872A (zh) | 数据包转发系统和方法 | |
CN107179979A (zh) | 一种远程终端信息的获取、分析方法、装置及系统 | |
CN208046653U (zh) | 一种电力监控系统网络安全监测主站平台系统 | |
US10171258B2 (en) | Data collection method and system | |
CN102508673B (zh) | 快速开发与配置平台类软件的系统及方法 | |
CN102148702B (zh) | 一种使用网络配置协议进行网络管理的方法 | |
CN106897316A (zh) | 一种信令数据的处理方法和装置 | |
EP3026860A1 (en) | Method and system for transmission management of full configuration synchronization between eml-nml | |
CN107333226B (zh) | 室内移动感知方法、装置、计算机可读介质和电子设备 | |
CN104217314A (zh) | 路由信息抓取方法和装置 | |
CN110719233B (zh) | 用于发送信息的方法及装置 | |
CN109558129A (zh) | 进度条实现方法及装置 | |
KR101736382B1 (ko) | 이엠에스 서버 및 이의 로그 데이터 관리 방법 | |
CN110781058A (zh) | 一种移动端应用性能数据采集方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140219 |
|
RJ01 | Rejection of invention patent application after publication |