一种soa系统及业务处理方法

文档序号:9491859阅读:327来源:国知局
一种soa系统及业务处理方法
【技术领域】
[0001]本发明涉及信息管理技术领域,尤其涉及一种S0A系统及业务处理方法。
【背景技术】
[0002]SOA (Service Oriented Architecture,面向服务的体系结构)是一种粗粒度、松耦合服务的架构模型,它可以根据需求通过网络对松耦合的粗粒度应用服务组件进行分布式部署、组合和使用。服务之间可通过简单、精确、标准的协议和接口定义语言进行通信,不涉及底层编程接口和通信模型。而且这种体系结构将各种功能以粗粒度的服务表示出来,每种服务都能清晰地表示其技术或业务价值,在应用实现过程中,可以通过对服务的动态组装来适应业务需求的动态变化。
[0003]ESB (Enterprise Service Bus,企业服务总线)是SOA系统的一个支柱技术。它是一种开放的、基于标准的消息处理机制,通过简单的标准适配器和接口,来完成粗粒度应用(比如服务)和其他组件之间的互操作。作为一种消息代理架构提供消息队列系统,使用诸如 SOAP (Simple Object Access Protocol,简单对象访问协议)或 JMS(Java MessageService)等标准技术来实现。一般地,ESB的主要功能包括:通信和消息处理、服务交互和安全性控制、服务质量和服务级别管理、建模、管理和自治、基础架构等。
[0004]目前,每种客户端有可能对应不同的开发语言,因此对于每一种客户端的开发语言,均需要提供针对该开发语言的所有S0A功能,这就造成当S0A新增或者优化部分功能时,需要分别针对每一种客户端对应的开发语言进行开发,可见这种开发方法的缺点是代码无法复用,软件开发量大,集成时间长。

【发明内容】

[0005]本发明实施例提供一种S0A系统及业务处理方法,用以解决现有技术中存在代码无法复用,软件开发量大,集成时间长的问题。
[0006]本发明方法提供一种业务处理方法,该方法包括:S0A系统的客户端根据用户指令生成业务请求信息;所述客户端使用与所述客户端对应的通信协议,将所述生成的业务请求信息发送至代理服务器,以使所述代理服务器获取并处理所述业务信息,将处理结果上传至远程服务器。
[0007]进一步地,本发明方法提供一种业务处理方法,该方法包括:S0A系统的代理服务器根据与所述客户端对应的通信协议接收客户端发送的业务请求信息,其中,所述业务请求信息是客户端根据用户指令生成的;
[0008]所述代理服务器中的企业服务总线模块将所述客户端对应的通信协议转换为统一的服务请求协议;
[0009]所述代理服务器中的功能模块通过统一的服务请求协议与企业服务总线模块通信后,获取并处理所述业务信息,并将处理结果上传至远程服务器,其中,所述代理服务器中的功能模块和企业服务总线模块是通过预设的开发语言实现的。
[0010]基于同样的发明构思,本发明实施例进一步地提供一种S0A系统,该系统包括:
[0011]客户端的接收单元,用于根据用户指令生成业务请求信息;
[0012]客户端的发送单元,用于使用与所述客户端对应的通信协议,将所述生成业务请求信息发送至代理服务器,以使所述代理服务器获取并处理所述业务信息,将处理结果上传至远程服务器。
[0013]进一步地,本发明实施例还提供一种S0A系统,该系统包括:
[0014]代理服务器的接收单元,用于根据与所述客户端对应的通信协议接收客户端发送的业务请求信息,其中,所述业务请求信息是客户端根据用户指令生成的;
[0015]代理服务器的转换单元,用于将所述客户端对应的通信协议转换为统一的服务请求协议;
[0016]代理服务器的处理单元,用于通过统一的服务请求协议与企业服务总线模块通信后,获取并处理所述业务信息,并将处理结果上传至远程服务器,其中,所述代理服务器中的功能模块和企业服务总线模块是通过预设的开发语言实现的。
[0017]本发明实施例一方面将S0A系统的通信协议部分和功能模块分开,通信协议部分仍然利用该客户端对应的开发语言在客户端上实现,而功能模块则通过预设的开发语言在服务器上实现,使得S0A系统的功能模块与协议无关;另一方面,代理服务器中的企业服务总线模块将与所述客户端对应的通信协议转换为统一的服务请求协议,所述代理服务器中的功能模块通过统一的服务请求协议与企业服务总线模块通信后,获取并处理所述业务信息,并将处理结果上传至远程服务器。可见,经过本发明实施例改进后的S0A系统,当S0A新增或者优化部分功能时,只需要使用预设的开发语言进行相应地开发,不需要针对每一种客户端语言分别开发,有效提高代码复用性,使得服务的开发人员只需专注于S0A功能的业务模型等业务上的开发,从而降低开发难度。
【附图说明】
[0018]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0019]图1为本发明实施例提供一种S0A的客户端业务处理方法流程示意图;
[0020]图2为本发明实施例提供一种S0A的代理服务器业务处理方法流程示意图;
[0021]图3为本发明实施例提供一种S0A的客户端和代理服务器调用示意图;
[0022]图4为本发明实施例提供一种S0A的客户端中的单元架构示意图;
[0023]图5为本发明实施例提供一种S0A的代理服务器中的单元架构示意图。
【具体实施方式】
[0024]为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0025]参见图1所示,本发明实施例提供一种S0A的客户端业务处理方法流程示意图,该方法包括:
[0026]步骤S101,S0A的客户端根据用户指令生成业务请求信息。
[0027]步骤S102,所述客户端使用与所述客户端对应的通信协议,将所述生成的业务请求信息发送至代理服务器,以使所述代理服务器获取并处理所述业务信息,将处理结果上传至远程服务器。
[0028]其中,针对互联网上的电商营销管理系统,S0A的客户端通常包括浏览器客户端、移动客户端、配送客户端、统计客户端等类型。不同的客户端通常会根据不同的开发语言实现,例如,配送客户端本身的开发语言是phb (Hypertext Preprocessor,超文本预处理器)、统计客户端本身的开发语言是node.js(java工具包)时,则在所述客户端对应的开发语言的SDK (Software Development Kit,软件开发工具包)上实现与所述客户端对应的通信协议。所谓SDK—般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。
[0029]当S0A的客户端完成上述步骤之后,代理服务器进一步将接收的业务请求信息执行以下步骤,参见图2所示,本发明实施例进一步提供一种S0A的代理服务器业务处理方法流程示意图,该方法包括:
[0030]步骤S201,S0A的代理服务器根据与所述客户端对应的通信协议接收客户端发送的业务请求信息,其中,所述业务请求信息是客户端根据用户指令生成的。
[0031]步骤S202,所述代理服务器中的企业服务总线模块将所述客户端对应的通信协议转换为统一的服务请求协议。
[0032]步骤S203,所述代理服务器中的功能模块通过统一的服务请求协议与企业服务总线模块通信后,获取并处理所述业务信息,并将处理结果上传至远程服务器,其中,所述代理服务器中的功能模块和企业服务总线模块是通过预设的开发语言实现的。
[0033]其中,上述统一的服务请求协议可以包括SEB协议。
[0034]举例来说,图3所示为本发明实施例的互联网电商营销管理系统的S0A架构的结构示意图,包括依次连接的客户端301、代理服务器302、远程服务器303。
[0035]所述客户端301包括浏览器客户端、移动客户端、配送客户端、统计客户端。所述客户端301用于获取互联网电商营销系统的业务数据。
[0036]其中,代理服务器302包括企业服务总线模块和功能模块。所述企业服务总线模块用于将每种客户端对应的通信协议转换为统一的服务请求协议,并根据所述统一的服务请求协议与功能模块进行统一通信。
[0037]所述功能模块用于根据所述统一的服务请求协议获取并处理所述业务数据,并将处理后的业务数据上传至远程服务器303的数据库,所述S0A系统中的功能模块包括:熔断模块、限流模块、超时模块、负载均衡模块、降级模块、服务发现模块。该部分模块与协议模块的区别是与客户端有一定的解耦性,因此可以单独使用的特定的开发语言进行实现。。
[0038]可见,上述实施例实际上是将S0A系统的通信协议部分和功能模块进行拆分,使得代理服务器做到与协议无关,同时代理服务器上的功能模块和企业服务总线的开发只需要使用一种开发语言,所述设定的开发语言为java、phb、node, js、C++、c语言中的任意一种。所有的客户端均可以调用该代理服务器完成业务请求信息的转发,不需要针对每一种客户端语言分别开发,有效提高代码复用性,使得服务的开发人员只需专注于SOA功能的业务模型等业务上的开发,从而降低开发难度。
[0039]为了提高代理服务器上业务处理的安全性,本发明实施例进一步地提供安全校验模块。所述代理服务器通过安全校验模块将接收的所述业务信息进行安全校验,所述安全校验包括身份识别、安全扫描、数据安全校验中的任意一种或组合。具体地,安全校验可以包括校验码识别,二维码扫描等方式。
[0040]另外,为了有效避免功能模块中的单点故障,所述代理服务器通过监控记录模块中记录和监控服务组件的内
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1