CN103888508B - 用于数据连接多样化的方法和系统及其存储介质 - Google Patents
用于数据连接多样化的方法和系统及其存储介质 Download PDFInfo
- Publication number
- CN103888508B CN103888508B CN201310711738.4A CN201310711738A CN103888508B CN 103888508 B CN103888508 B CN 103888508B CN 201310711738 A CN201310711738 A CN 201310711738A CN 103888508 B CN103888508 B CN 103888508B
- Authority
- CN
- China
- Prior art keywords
- data
- computing platform
- common
- application
- connections
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/324—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4535—Network directories; Name-to-address mapping using an address exchange platform which sets up a session between two nodes, e.g. rendezvous servers, session initiation protocols [SIP] registrars or H.323 gatekeepers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/2895—Intermediate processing functionally located close to the data provider application, e.g. reverse proxies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
提供了一种与到和来自在计算平台上启动的应用的不同数据连接的服务质量和管理相关的方法。到和来自应用的不同类型的数据连接可以包括例如,HTTP、Web服务、OData/REST、OData/HTTP、SAP RFC、以及SAP ALE类型的数据连接中的一个或者多个。所述方法包括在计算平台中提供用于到和来自应用的不同类型的数据连接的服务质量和管理的层,以及提供公共切入点,以通过到和来自应用的不同类型的数据连接来接收发往外部接收器的数据。
Description
技术领域
计算平台可以被简单地定义为启动应用软件的地方。计算平台可以包括被设计为允许应用软件运行的硬件架构和软件框架(包括应用框架)。计算平台向软件开发者提供了如下的确定性,即,只要逻辑代码(或者应用) 支持计算平台,则所述逻辑代码(或者应用)将在各种系统的任何一个上一致地运行。逻辑代码包括字节代码、源代码、和机器代码。
在计算平台上运行的应用会经由特定的编程数据连接而与其他的计算元件或者实体(例如,数据库、其他应用、其他计算平台或系统等) 发生相互作用或者交换数据。到或者来自应用的数据连接可能是特定的连接类型(例如,HTTP、Web服务、OData/REST、OData/HTTP、SAP RFC、 SAP ALE等)。每个特定的数据连接类型可以具有其自身的编程模型(例如,用于配置、运行、监测、寻址方面、错误处理等)。
在实践中,在计算平台上运行的应用可以使用不同的连接类型和编程模型。在连接类型和编程模型的多样化或多种化可能会给计算平台上的应用集成和连接管理增加复杂度。
用于应用的特定的数据连接类型可以通过应用开发者基于例如,对于特定的连接类型的优点和缺点的考虑来选择。通过一个连接类型的数据连接而传入的传入数据大多是在应用中通过相同的连接类型的实体来处理 (例如,传入的RFC数据往往是在接收RFC功能模块中预处理)。其结果是,在每次新的或额外的数据连接类型将由应用来支持时,应用逻辑必须由应用开发者重写。一些应用编程接口(API),例如,用于接收数据并且包括至少部分的业务逻辑的API可能不得不被重写,以保持在最新状态。
应该考虑用于简化应用集成和连接管理的计算平台框架。
背景技术
发明内容
本发明提供一种包括处理器、存储器、以及基于所述处理器和存储器的计算平台的系统。所述计算平台向在其上启动的应用提供一个或多个服务和进程。应用可能具有一组到其他实体、数据库、或应用的数据连接。该组数据连接可能包括不同的特定连接类型(例如,HTTP、Web服务、OData /REST、OData/HTTP、SAP RFC、SAP ALE连接类型等)的不同的数据连接。但可以理解,该组不同的特定连接类型的数据连接可以包括相同的连接类型的多个数据连接。此外,将会理解的是,如本文使用的术语“数据连接的类型”、“数据连接类型”、或“连接类型”指的是数据连接的特定的连接类型。
根据本发明的一个大体方面,计算平台包括用于服务质量和到和来自应用的数据连接的管理的层。到和来自应用的数据连接可以包括不同特定连接类型中的一个或多个数据连接。
在一个方面,用于服务质量和管理的层提供了一个或多个公共服务,其包括错误处理、监测、异步处理、和用于到应用的不同类型的数据连接的寻址中的至少一个。
在另一个方面,用于服务质量和管理的层包括公共的切入点 (entry point),其用于通过到和来自应用的不同的连接类型的数据连接来接收发往外部接收器的数据。用于服务质量和管理的层包括用于到和来自应用的不同的连接类型的数据连接的每一个的相应消息汇编器模块。消息汇编器模块将从公共切入点接收的数据汇编作为用于根据到特定外部接收器的数据连接的类型而向特定外部接收器传输的消息。
在又一个方面中,用于服务质量和管理的层包括至少一个可寻址的数据移交点,用于在将接收的数据映射到公共数据结构或者格式之后,将接收的数据移交到在计算平台上的接受方(recipient)。
在又一个方面中,用于服务质量和管理的层包括被配置为建立语义地址,以用于通过到计算平台的数据连接来发送或者接收的数据消息的发送器和接收器。
根据本发明一个大体方面的方法包括:提供到和来自计算平台上的应用的不同连接类型的数据连接的、用于服务质量和管理的层;以及提供公共切入点,以通过到和来自应用的不同连接类型的数据连接来接收发往外部接收器的数据。
在一个方面,所述方法包括:提供用于到和来自应用的不同连接类型的数据连接的每个的相应消息汇编器模块。所述消息汇编器模块被配置为将在公共切入点接收的数据汇编作为用于根据到特定外部接收器的数据连接的连接类型而向特定外部接收器传输的消息。
在另一个方面,所述方法包括配置用于服务质量和管理的层,以从外部发送器通过不同类型的数据连接来接收数据,以及将通过不同连接类型的数据连接接收的数据映射为公共数据结构或者格式。
在又一方面,所述方法包括:提供至少一个可寻址的数据移交点,用于在将接收的数据映射到公共数据结构或者格式之后,将数据移交到在计算平台上的接受方。
在进一步的方面中,所述方法包括:提供被配置为用于建立语义地址的模块,所述语义地址用于独立于数据连接的连接类型的、通过到计算平台的数据连接来发送或者接收的数据消息的发送器和接收器。
根据本发明的一个大体方面的非临时性计算机可读介质,其包括能够在计算机系统上被执行的指令。当在计算机系统上执行所述指令时,其生成到和来自计算平台上的应用的不同连接类型的数据连接的、用于服务质量和管理的层;以及公共切入点,以通过到和来自应用的不同连接类型的数据连接来接收发往外部接收器的数据。
在一个方面,当在计算机系统上执行所述指令时,其进一步生成用于到和来自应用的不同连接类型的数据连接的每个的相应消息汇编器模块。所述消息汇编器模块可以将在公共切入点接收的数据汇编作为用于根据到特定外部接收器的数据连接的连接类型而向特定外部接收器传输的消息。
在另一个方面,当在计算机系统上执行所述指令时,其配置用于服务质量和管理的层,以从外部发送器通过不同类型的数据连接来接收数据,以及将通过不同连接类型的数据连接接收的数据映射为公共数据结构或者格式。
在附图和以下的说明书中,将对一个或者多个具体实施方式进行描述。从说明书和附图中,以及从权利要求中,本发明的其他特征将变得显而易见。
附图说明
在附图中:
图1是根据本文的公开内容的原理的,示出了在发送数据场景中使用的示例性计算平台的服务和处理元件的框图;
图2是根据本文的公开内容的原理的,示出了在接收数据场景中使用的图1的示例性计算平台的服务和处理元件的框图;
图3是根据本文的公开内容的原理的,示出了在发送数据场景中的图1的计算平台的语义寻址方法的示例性实施方式的框图;
图4是根据本文的公开内容的原理的,示出了在接收数据场景中的图2的计算平台的语义寻址方法的示例性实施方式的框图;
图5是示出了计算机器所支持的计算平台的示意性框图;以及
图6是根据本文的公开内容的原理的,用于到和来自在计算平台上启动的应用的不同的数据连接的服务质量和管理的示例方法的流程图。
具体实施方式
计算机系统可以用来启动应用(例如,业务应用),所述应用连接到其他应用、数据库、服务器、存储装置、计算机系统或实体等,或者与其进行交互。计算机系统可以包括由一个或多个物理或虚拟的计算机器作为主机或支持的计算平台,所述计算机器可以例如,在网络布局中被部署。计算平台可以例如,包括管理硬件组件(例如,处理器、存储器、键盘、显示器、网络卡等)的操作系统,以及主机计算机器的其它组件和进程。图5示意性示出了由计算机器10支持的示例性计算平台20,其可以是在联网的计算机系统中的物理的或虚拟机的代表。主机计算机器10可以包括CPU 11、存储器12、I/O 13、和O/S 14。CPU 11可以是任何通用的处理器,并且存储器12可以是被配置为存储为了执行特定功能而由CPU 11使用的数据的一个或多个存储设备。
计算平台20可以为在其上启动的应用(例如,业务应用30) 提供应用框架和进程或者服务。例如,正在运作的应用30可以连接到其他外部实体(例如,应用,数据库系统等),从而发送、接收或者交换数据。对于“连接”类型的定制或者行业标准的数据连接协议(例如,HTTP、Web 服务、OData/REST、OData/HTTP、SAP RFC、SAP ALE等)可用于在发送和接收实体之间的数据连接。
在计算平台架构和编程模型下,根据本发明公开的原理,在计算平台中提供用于不同连接类型的数据连接的公共连接服务质量和管理层 (“公共管理层”)。
公共管理层被配置成向可以由在计算平台上托管(hosted)的应用所使用或者要求的不同连接类型的数据连接提供一个或多个公共服务(例如,错误处理、监测、异步处理、寻址等)。可以为公共服务设想两种情况——在其中,在计算平台上托管的应用通过数据连接来发送数据的第一情况,以及在其中在计算平台上托管的应用通过数据连接来接收数据的第二情况。
发送数据的情况
在发送数据的情况下的数据可能来自应用环境,或者来自数据库环境。在这种情况下服务,公共管理层可以具有公共切入点,用于从发送实体接收发往外部接收器的数据(与数据属性),所述发送实体可以是耦合到计算平台或托管在计算平台上的应用的数据库。通过发送实体而被移交给公共切入点处的公共管理层的数据属性可以包括例如数据连接是否是同步的、异步的、是否是可靠的等的数据属性。另外,该移交的数据属性可以包括直接或间接识别到所期望的数据的接收器的数据连接的类型。
公共管理层可以被配置为处理在公共切入点处接收到的数据和数据属性,以汇编与到所期望的数据的外部接收器的数据连接的类型一致的消息。汇编的消息可以从相应的基础层或用于公共管理层中的连接类型的短截线而发送到数据的期望的外部接收器。公共切入点可以是相同的,而不管消息是从来自应用环境或者是从来自数据库环境的数据中汇编。
图1是示出了根据本发明的原理的,可以在发送数据情况下使用的示例性计算平台100的服务和处理元件的框图。如图1所示,计算平台100 可以被耦合到数据库120/数据库表122。另外,计算平台100可以托管一个或多个应用(例如,应用160)。所述一个或多个应用可以被配置为例如,用于处理或访问存储在数据库120/数据库表122中的数据。
计算平台100可以包括连接服务质量和管理层110(“公共管理层110”),其被配置为公共地管理通过不同连接类型的数据连接或者信道来从计算平台向各种外部接收器(例如,RFC接收器142、HTTP/OData接收器144、XYZ接收器146等)发送数据。计算平台100可以包括公共切入点 140,在其处,被发送到各种接收器中的任何一个的数据150被通过发送实体(例如,应用或数据库)而移交到公共管理层110。如图1所示,数据150 的移交可能涉及,例如,在公共切入点140处,应用160将对于数据的处理 (handle)(例如,存取密钥,令牌、或其它标识符)提供给公共管理层110。替代或补充地,通过数据库120进行的数据150的移交可能涉及在公共管理层110处,移交数据库触发器、密钥、或类似的数据标识符给公共切入点140。将被理解的是,数据150的移交也可以涉及移交相关联的数据属性,包括例如,期望的数据接收器的标识和/或数据连接类型。
公共管理层110可以包括相应消息汇编模块(例如,消息汇编器模块112、消息汇编器模块114、消息汇编器模块116等),其对于由计算平台100支持的各种连接类型中的每一个来向相应的基础层或短截线(例如, RFC基础层113、HTTP/OData基础层115、XYZ基础层117等)进行馈送。特定的基础层或短截线可以为特定的数据连接类型定义计算平台到接收器的接口。公共管理层110可以被配置为使用相应消息汇编器模块112,基于传送到特定接收器的数据150来汇编消息,并且进一步地使用与特定接收器的数据连接类型相对应的基础层或者短截线来向特定接收器发送汇编的消息。
消息汇编器模块112-116可以包括增强挂钩点118,其被配置为用于可扩展性(例如,在消息汇编后)。这些增强挂钩点118可用于选择性地将补充数据添加到基于数据150汇编的消息中。添加到消息的补充数据可以在没有诸如应用检查的应用参与的情况下通过直接访问数据库来获取。
由于公共管理层110提供了连接接口,并且准备了各种连接类型的数据连接的信息,因此可能不需要利用单独的逻辑或者用于多种连接类型中的每一个的应用编程接口(API)来定制应用(例如,应用160)。此外,例如,通过在公共管理层110中包括适当的消息汇编器模块,新的或未来的连接类型的数据连接也可以得到服务,而不需要编程或修改应用160本身。
接收数据的情况
在接收数据的情况下,发往计算平台上的应用或数据库的数据可以经由各种连接类型中的任意一个的数据连接而在计算平台上接收。每个数据连接类型可以具有其自身的编程模型。对于这种情况下的服务,计算平台可以具有单个的数据移交点(或“通用API”),以用于处理从外部发送器接收到在计算平台上托管的应用或者到与计算平台链接的数据库的数据。单个数据切换点或通用API可以通常用于从几个外部接收器中的任何一个接收的数据的特定应用,而与通过其在计算平台中接收数据的数据连接或者信道的连接类型无关。可以预期,在计算平台中接收的数据可以根据通过其接收数据的连接或信道的类型和编程模型而不同地制备或调节。公共管理层可被配置成映射通过不同的连接类型的数据连接而接收的不同制备或者调解的数据,以符合通用API。
公共管理层可以提供用于由计算平台支持的所有的不同连接类型的公共服务质量(例如,错误处理、监测、异步处理等)。通过公共管理层的实施,可以避免需要与用于应用进行的数据连接的每个连接类型分离地提供特定的服务工具(例如,管理工具、错误处理工具、监测工具、配置工具、和自身运行时间(即,执行对象)等)。在中央环境中,公共管理层为所有通过应用进行的数据连接所使用的数据连接和连接类型公共地提供相同的服务或者功能。
图2是示出了根据本发明的原理的,在接收数据的情况中使用的示例性计算平台100的服务和处理元件的示意图。如先前在图1中所示,计算平台100可以被耦合到数据库120/数据库表122。另外,计算平台100 可以托管一个或多个应用(例如,在图1中的应用160,其在图2中被表示为应用逻辑165)。
计算平台100可以包括连接服务质量和管理层210(“公共管理层210”),其被配置为公共地管理来自各种外部发送器的不同连接类型的数据连接的、在计算平台上的数据接收(例如,RFC发送器152、HTTP/ODATA 发送器154、XYZ发送器156等)。对于计算平台100所支持的各种外部发送器数据连接类型中的每一个,公共管理层210可以包括相应基础层或模块(例如,RFC基础层213、HTTP/ODATA基础层215、XYZ基础层217 等),以作为在计算平台100上的同伴数据接收模块。另外,公共管理层210 可以包括相应的数据映射模块(例如,RFC到Univ-API映射器214、HTTP /ODATA到Univ-API映射器216、XYZ到Univ-API映射器218等),以用于同伴数据接收模块213-217中的每一个。数据映射模块可以被配置成将通过各种数据接收模块通过不同的连接类型的数据连接而接收的数据映射为公共的数据结构或者格式,以用于在计算平台100上的进一步的处理或者使用。公共数据结构或格式可以,例如,与在计算平台100上托管的应用(例如,应用160)的至少一个应用特定的应用编程接口(例如,API 170) 兼容。
数据映射模块214-218可以进一步包括增强挂钩点119,其可以是在发送器侧的增强挂钩点(例如,增强挂钩点118)的对应方。增强挂钩点119可以被配置为从接收的消息中取回增强数据,这要求不由应用逻辑 165提供的单独的处理。增强挂钩点119可以被置于在连接类型特定的数据映射模块214-218之后,但是在至少一个API 170之前。
此外,计算平台100可以包括至少一个可寻址数据移交点(例如,应用特定的API170),通过其,通过多种发送器中的任何一个发送的数据可以在其被映射为公共数据结构或者格式之后,通过公共管理层210而移交到指定的接受方(例如,应用160、数据库表122)。如图2中所示,映射数据可以通过例如,直接数据库访问而从应用特定的API 170移交到数据库 120,或者通过调用而移交到应用逻辑165。
可支持各种数据连接类型和/或托管各种应用的计算平台100可以使用指示哪个特定的数据映射模块应该被调用来用于特定连接类型或者外部发送器的数据连接和/或例如当从外部发送器接收数据时,哪个应用特定的API应该被调用的参数或者设置来手动地配置。
由于公共管理层210将公共应用特定的API(例如,API 170) 提供用于各种数据连接类型,所以可以不需要利用用于多种数据连接类型的每一个的单独逻辑或者应用编程接口,来定制在计算平台100上托管的应用 160。另外,例如,通过在公共管理层110中包括适当的数据映射模块,新的或未来的数据连接类型可以被服务,而不需要改变或重写应用160或应用逻辑165。
应当理解的是,在说明书中为了方便,将分别对应于数据发送情况和数据接收情况的在图1和2中的示例性公共管理层不同地标识为“110”和“210”。在计算平台中的单个公共管理层可以包括在图1和图2中所示的两个示例性公共管理层110和210的元件,并且在数据发送和数据接收这两种情况下提供连接服务。此外,通用管理层可以包括与管理或者提供用于多种连接类型的服务质量相关的额外的元件或模块。例如,图3和图4示出了公共管理层310和410,其包括与通过计算平台100支持的各种数据连接类型来发送或者接收的数据或者消息的“寻址”方面相关的额外的模块或元件 (例如,我是谁(Who-am-I)API 350、逻辑接收机确定-API 360、以及谁是谁(Who-Is-who)API 450等)。
可以被包括在计算平台100的公共管理层中的额外的模块或元件可以基于语义寻址方法,在其中,用于数据连接的可寻址实体是例如,应用实体。该应用中心方法与其他的寻址方法对比的不同之处在于涉及经由诸如RFC目的地或者URL的技术实体来对系统或者客户端寻址。本发明的语义寻址方法可以适用于应用级别的实体和比系统或客户端粒度(granular) 更小的实体。此外,计算平台100的公共管理层独立于数据连接的特定的连接类型而集中地在不同的数据连接上实施语义寻址方法。
在随后的描述中可能在本发明中涉及的示例性寻址问题可能会涉及在计算机系统上的实体之间的数据通信,在所述计算机系统中,实体如下:组织单元1和2经由计算机系统而连接,并且可以通过他们的语义标识而在系统上揭露(例如,分别为“德国北部的公司销售办公室”和“德国南部的公司销售办公室”)。组织单元2的客户可能有语义标识:“汽车厂Baunatal (包纳塔尔)发动机设备”。然而,在组织 单元2处,客户可以仅仅被标识为在系统上的URL/RFC目的。
在基于语义寻址方法的示例性解决方案中,实体(例如,德国南部的公司销售办公室等)可以具有指定的语义标识或“可标识商务语境” (IBC)名称,其可以例如,通过实体所有者(例如,应用、客户、业务线 (LOB)等)来创建。示例性IBC名称可以是元组(tuple),其包括实体标识信息,例如:邮政地址、电话号码、商业背景的电子邮件地址、或相应的联络人等。IBC名称或实体的元组可以输出到其生成的系统或者环境之外,并且可以被共享(例如,通过电子邮件),或者从需要被寻址的IBC命名的实体中输入到发送或者寻址系统、应用、或者环境中。IBC可以基于计算平台100上的技术和逻辑接收器确定。
在基于语义寻址方法的解决方案中,用于在系统上的实体之间的数据连接的技术参数可以从发送或者“寻址”实体(例如,应用、系统等)的语义标识以及接收或“要被寻址”实体(例如,应用、系统等)的语义标识的元组中推断。
在发送数据情况(图1)中,发送器和接收器实体的IBC元组的知识可以允许对于可以在发送器和接收器之间提供或者实施的连接进行技术确定。技术确定可以包括例如,确定连接类型(例如,RFC)、相应的消息汇编器模块(例如,RFC消息汇编模块)、在接收器侧要被调用的功能模块(例如,RFC-接收器)、以及安全设置等。
如果需要逻辑路由,则可以生成基于应用定义标准的路由规则。例如,在位于德国的客户经由在计算平台上托管的应用来发出对于书本的购买订单的情况下,购买订单可以逻辑地路由到IBC:“德国仓库”。相反,在客户位于美国的情况下,购买订单可以逻辑地路由到IBC:“美国仓库”。
发送数据的情况
图3示出了以上参考图1描述的发送数据的情况中,在计算平台 100上的语义寻址方法的示例性实施方式300。在实施方式300中,计算平台100的公共管理层310可以包括API(例如,我是谁API 350和逻辑接收器确定API 360),其被配置来实现语义寻址方法。用于API的IBC数据可以是硬编码的。在计算平台100的示例性实施方式中,IBC元组数据可以例如,手动地输入到可以通过API或计算平台100访问的数据存储装置中。进一步地,通过IBC元组数据的分析,API可以被配置为生成关于发送器的标识和接收器的标识的信息。基于IBC元组数据,API还可以被配置来生成用于发送器-接收器数据连接的技术数据。
我是谁API 350可以例如,被配置为基于IBC元组数据的语义分析,来向发送实体提供自己或自身标识IBC元组。此外,逻辑接收器确定 API 360可以例如,被配置为基于IBC元组数据的语义分析来提供接收器标识。即使在发送数据的同时,发送器可能已经技术地对系统或客户端(例如,作为URL/RFC目的等)进行了寻址,发送器IBC和接收器IBC也可以利用发送的数据而被传递。
在示出语义寻址的使用的示例中,具有IBC名称的业务实体 (WERKS 002、MATNR4711)可能需要经由应用160通过计算机系统来发送物料运送订单。我是谁API 350可以基于IBC名称的语义分析,利用标识信息,对在应用160处由实体(WERKS 002、MATNR 4711)进行的自身-标识请求“我是谁(WERKS 002、MATNR 4711)”作出如下的响应:“你是“AUTO WerkBaunatal(包纳塔尔)发动机设备””。此外,逻辑接收器确定 API 360可以基于IBC名称的语义分析,利用标识信息,对于来自实体 (WERKS 002、MATNR 4711)的材料运送订单的接收器标识请求(例如,“谁是接收方(receiver)?我是AUTO Werk Baunatal,发动机设备,要运送的MATNR是4711,运送到美国”。)作出如下的响应:你的接收方是仓库2,美国纽约州。
接收数据的情况
图4示出了如上参考图2描述的、在接收数据的情况下在计算平台100上的语义寻址方法的示例性实施方式400。在实施方式400中,计算平台100的公共管理层410可以包括API(例如,“谁是谁”API 450),其被配置来实现语义寻址方法。如上对于发送数据的情况的描述,在计算平台100 的示例性实施方式中,用于API的IBC数据可以被硬编码。IBC元组数据可以例如,手动地输入到可以通过API或计算平台100访问的数据存储装置中。进一步地,API可以被配置为生成关于发送器的标识和接收器的标识的信息。基于发送器和接收器的IBC元组数据,API还可以被配置来生成用于发送器 -接收器数据连接的技术数据。
谁是谁API 450可以例如,被配置为基于IBC元组数据的语义分析,确认发送实体和接收实体的标识。在上述的发送数据的情况的示例中,业务实体(WERKS 002、MATNR4711)可以通过RFC信道来发送材料运送订单给外部接收器/公共管理层410。在公共管理层410中的谁是谁API 450可以例如,在接收到材料运送订单之后,确认发送方是谁,以及如下地确认是谁要被运送订单要寻址到:“发送方是AUTO WERK Baunatal,发动机设备,”以及“你是仓库2,美国纽约”。
正如先前参照图3所描述的,即使系统或客户端可以由发送器技术寻址为URL/RFC目的,发送材料运送订单仍可以包括发送器和接收器 IBC这两者。通过接收器的语义地址(即,接收器IBC名称),在业务系统中代表若干接收子实体的接收应用可以能够区分若干的接收子实体中的哪一个是发送材料运送订单所属于的(例如,组织单位001或单位002)期望的接受方。
值得注意的是,以上描述的各种语义寻址API和功能独立于计算平台100所支持的连接类型/信道。其可以是在计算平台100上的公共管理层的一部分。进一步地,可以被包括在计算平台100上的公共管理层中的功能不局限于参照图1-4所描述的那些。公共管理层的各种实施方式可以包括同样也是独立于连接类型的替代或附加功能。这些替代或附加功能可以例如,包括通过将语义寻址概念与关于可能涉及的技术实体的信息进行组合来支持在不同的系统上运行的分布式应用的集成的API。进一步地,替代或附加功能可以例如,包括用于分布式应用的技术和语义端到端监测的API。
图6示出了用于到和来自在计算平台上启动的应用的不同的数据连接的服务质量和管理的示例性方法600。到和来自应用的不同类型的数据连接包括可以例如,包括一个或者多个HTTP、Web服务、OData/REST、 OData/HTTP、SAP RFC、和数据连接的SAP ALE类型。
方法600包括:在计算平台中提供用于到和来自应用的不同类型的数据连接的服务质量和管理的层(601),以及提供用于通过到和来自应用的不同类型的数据连接来接收发往外部接收器的数据的公共切入点(602)。
在计算平台中,提供用于到和来自应用的不同类型的数据连接的服务质量和管理的层601可以包括针对到和来自应用的不同类型的数据连接的每一个来提供相应的消息汇编器模块(603)。根据到特定外部接收器的数据连接的类型,消息汇编器模块可以被配置将在公共切入点接收的数据汇编为传输到特定外部接收器的消息。针对到和来自应用的不同类型的数据连接的每一个来提供相应的消息汇编器模块603可以包括提供增强挂钩点,其被配置为将补充数据添加到基于在公共切入点处接收的数据而汇编的消息中(604)。
此外,方法600可以包括配置用于服务质量和管理的层,以通过不同类型的数据连接中的任何一个来从外部发送器接收数据,并且将通过不同连接类型的数据连接而接收的数据映射为公共数据结构或格式(605),提供至少一个可寻址数据移交点,以在将数据映射为公共数据结构或者格式之后将数据移交到计算平台上的接受方(606),以及在至少一个可寻址数据移交点之前提供至少一个增强挂钩,其被配置为从不能通过在计算平台上启动的应用的逻辑来处理的所接收的消息中提取数据(607)。
方法600还可以包括独立于数据连接的连接类型,提供被配置为用于建立用于通过到计算平台的数据连接而发送或者接收的数据消息的发送器和接收器的语义地址。
本发明中描述的各种技术的实施方式可以以数字电子电路、或者以计算机硬件、固件、软件或其组合来实现。实施方式可以被实现作为计算机程序产品,即,有形地体现在信息载体中,例如,在机器可读存储设备中或者在传播信号中的计算机程序,以通过数据处理装置,例如,可编程处理器、计算机、或多个计算机来执行,或者用于控制其的操作。诸如如上所述的计算机程序的计算机程序可以用任何形式的编程语言编写,包括编译或解释语言,并且可以以任何形式部署,包括作为独立程序或作为模块、组件、子程序、或适于在计算环境中使用的其它单元。计算机程序可以部署为在一台计算机上执行,或者在一个站点或者在多个站点上分布并且通过通信网络来互联的多台计算机上执行。
方法步骤可以由执行计算机程序的一个或多个可编程处理器来执行,以通过操作输入数据和生成输出来执行功能。方法步骤还可以通过专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路) 来执行,并且装置也可以被实现为专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
通过举例的方式,适合于计算机程序的执行的处理器包括通用和专用微处理器这两者,以及任何类型的数字计算机中的任何一种或多种处理器。一般来说,处理器将接收来自只读存储器、或随机存取存储器、或其两者的指令和数据。计算机的元件可以包括用于执行指令的至少一个处理器、以及用于存储指令和数据的一个或多个存储器设备。一般来说,计算机还可以包括例如磁盘、磁光盘、或光盘的用于存储数据的一个或多个大容量存储设备,或者可操作地耦合其上,以从其接收数据或向其传送数据,或者进行以上两者操作。适于体现计算机程序指令和数据的信息载体包括所有形式的非易失性存储器,例如包括例如EPROM、EEPROM、和闪存设备的半导体存储器设备;例如内部硬盘或可移动盘的磁盘;磁光盘;以及CD ROM和 DVD-ROM盘。处理器和存储器可以通过专用逻辑电路来补充,或者可以被集成在专用逻辑电路中。
为了提供与用户的交互,实施方式可以在具有用于显示信息给用户的显示设备,例如,阴极射线管(CRT)或液晶显示器(LCD)监视器;以及用户利用其来向计算机提供输入的键盘和例如鼠标或轨迹球的指示设备的计算机上实现。其他种类的设备也可以用来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈,例如,视觉反馈、听觉反馈、或触觉反馈;并且,来自用户的输入可以以任何形式接收,包括声音、语音、或触觉输入。
实施方式可以在包括后端组件,例如,数据服务器;或包括中间件组件,例如,应用服务器;或者包括前端组件,例如,具有用户可以通过其与实施方式进行交互的图形用户界面或Web浏览器的客户端计算机;或者该后端、中间件、或前端组件的任意组合的计算机系统中实现。组件可以通过任何形式或介质的数字数据通信,例如,通信网络来互连。通信网络的示例包括局域网(LAN)和广域网(WAN),例如,因特网。
虽然在本发明中示出了所描述的实施方式的某些特征,但是对于本领域技术人员而言许多的修改、替换、改变、或者等价物也变得可知。因此,应该理解的是,所附权利要求旨在覆盖落入到实施例范围内的所有这些修改和变化。
Claims (14)
1.一种用于数据连接多样化的系统,包括:
处理器;
存储器;以及
基于处理器和存储器的计算平台,
其中,所述计算平台被配置为向在其上启动的应用提供一个或者多个公共服务,以及
其中,所述计算平台包括用于管理去往所述应用和来自所述应用的不同类型的数据连接的层,其中所述用于管理的层包括:
公共切入点,通过去往所述应用和来自所述应用的所述不同类型的数据连接接收发往外部接收器的数据,
相应的消息汇编器模块,被提供用于去往所述应用和来自所述应用的所述不同类型的每一个数据连接,并且其中所述消息汇编器模块被配置为根据去往特定外部数据接收器的数据连接的类型来将在公共切入点接收的数据汇编为传输到所述特定外部数据接收器的消息,其中所述相应的消息汇编器模块包括增强挂钩点,所述增强挂钩点被配置为将补充数据添加到基于在公共切入点处接收的数据而汇编的消息中。
2.根据权利要求1所述的系统,其中,所述不同类型的数据连接包括HTTP、Web服务、OData/REST、OData/HTTP、SAP RFC、以及SAP ALE类型的数据连接中的一个或者多个。
3.根据权利要求1所述的系统,其中,所述一个或者多个公共服务包括用于不同类型的数据连接的公共错误处理、监测、异步处理、以及寻址中的至少一个。
4.根据权利要求1所述的系统,其中,所述计算平台被配置为通过不同的连接类型的数据连接来从外部数据发送器接收数据,以及将通过不同的连接类型的数据连接的任何一个接收的数据映射为公共数据结构或者格式。
5.根据权利要求4所述的系统,其中,所述计算平台包括至少一个可寻址数据移交点,以在将数据映射为公共数据结构或者格式之后,将数据移交到在计算平台上的接收方应用。
6.根据权利要求5所述的系统,其中,所述计算平台包括在至少一个可寻址数据移交点之前的至少一个增强挂钩点,以及其中,所述至少一个增强挂钩点被配置为从其数据不能通过在计算平台上启动的特定软件应用的逻辑来处理的所接收的消息中提取数据。
7.根据权利要求1所述的系统,其中,所述计算平台包括被配置为独立于数据连接的连接类型,为通过到计算平台的数据连接而发送或者接收的数据消息的发送器和接收器建立语义地址的模块。
8.一种用于数据连接多样化的方法,包括:
在计算平台上,提供用于管理去往在计算平台上的应用和来自在计算平台上的应用的不同类型的数据连接的层;以及
提供公共切入点,以通过去往在所述计算平台上的应用和来自在所述计算平台上的应用的不同类型的数据连接来接收发往外部接收器的数据,
其中所述用于管理的层包括:
公共切入点,通过去往所述应用和来自所述应用的所述不同类型的数据连接接收发往外部接收器的数据,
相应的消息汇编器模块,被提供用于去往所述应用和来自所述应用的所述不同类型的每一个数据连接,并且其中所述消息汇编器模块被配置为根据去往特定外部数据接收器的数据连接的类型来将在公共切入点接收的数据汇编为传输到所述特定外部数据接收器的消息,其中所述相应的消息汇编器模块包括增强挂钩点,所述增强挂钩点被配置为将补充数据添加到基于在公共切入点处接收的数据而汇编的消息中。
9.根据权利要求8所述的方法,其中,提供不同类型的数据连接包括配置所述计算平台,以通过不同的连接类型的数据连接来从外部数据发送器接收数据,以及将通过不同的连接类型的数据连接而接收的数据映射为公共数据结构或者格式。
10.根据权利要求9所述的方法,其中,提供不同类型的数据连接包括提供至少一个可寻址数据移交点,以在将数据映射为公共数据结构或者格式之后,将数据移交到在计算平台上的接收方应用。
11.根据权利要求10所述的方法,其中,提供不同类型的数据连接包括提供在至少一个可寻址数据移交点之前的至少一个增强挂钩点,其中,所述至少一个增强挂钩点被配置为从其数据不能通过在计算平台上启动的接收方应用的逻辑来处理的所接收的消息中提取数据。
12.根据权利要求10所述的方法,其中,提供不同类型的数据连接的管理的层包括提供被配置为独立于数据连接的连接类型,为通过到计算平台的数据连接而发送或者接收的数据消息的发送器和接收器建立语义地址的模块。
13.一种具有存储于其上的可由计算机系统执行的指令的非临时性计算机可读介质,当所述指令在所述计算机系统上执行时在计算平台生成:
用于管理去往应用和来自所述应用的不同类型的数据连接的层,其中所述用于管理的层包括:
公共切入点,通过去往所述应用和来自所述应用的所述不同类型的数据连接接收发往外部接收器的数据,
相应的消息汇编器模块,被提供用于去往所述应用和来自所述应用的所述不同类型的每一个数据连接,并且其中所述消息汇编器模块被配置为根据去往特定外部数据接收器的数据连接的类型来将在公共切入点接收的数据汇编为传输到所述特定外部数据接收器的消息,其中所述相应的消息汇编器模块包括增强挂钩点,所述增强挂钩点被配置为将补充数据添加到基于在公共切入点处接收的数据而汇编的消息中。
14.根据权利要求13所述的非临时性计算机可读介质,其中,当在计算机系统上执行时,所述指令配置所述计算平台,以通过不同类型的数据连接来从外部数据发送器接收数据,以及将通过不同的连接类型的数据连接而接收的数据映射为公共数据结构或者格式。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/721,506 US9009354B2 (en) | 2012-12-20 | 2012-12-20 | Services and management layer for diverse data connections |
US13/721,506 | 2012-12-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103888508A CN103888508A (zh) | 2014-06-25 |
CN103888508B true CN103888508B (zh) | 2020-01-03 |
Family
ID=48915812
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310711738.4A Active CN103888508B (zh) | 2012-12-20 | 2013-12-20 | 用于数据连接多样化的方法和系统及其存储介质 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9009354B2 (zh) |
EP (1) | EP2747382B1 (zh) |
JP (1) | JP6026992B2 (zh) |
CN (1) | CN103888508B (zh) |
CA (1) | CA2836853C (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10102188B2 (en) | 2015-07-14 | 2018-10-16 | Sap Se | ODatadoc generation from OData metadata document |
CN106371848B (zh) * | 2016-09-09 | 2019-08-02 | 浪潮软件股份有限公司 | 一种web开发框架支持Odata的实现方法 |
US11537741B2 (en) * | 2019-03-05 | 2022-12-27 | Sap Se | Unified multi-platform system for data privacy |
US11416485B2 (en) | 2019-03-28 | 2022-08-16 | Sap Se | Dynamic query expressions |
US20220334829A1 (en) * | 2021-04-15 | 2022-10-20 | Sap Se | Custom abap cloud enabler |
CN113792014B (zh) * | 2021-08-05 | 2023-08-25 | 广东核电合营有限公司 | 一种核电站文件管理方法、装置、终端设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1179872A (zh) * | 1995-11-30 | 1998-04-22 | 埃克斯塞尔公司 | 具有通用应用程序接口用于标准化交互呼叫处理通信的电信交换器 |
CN1275292A (zh) * | 1998-08-10 | 2000-11-29 | 电话通有限公司 | 在网关和服务中心之间进行路由确定的方法和装置 |
US8336089B1 (en) * | 2007-12-21 | 2012-12-18 | Emc Corporation | Method and apparatus for providing authentication and encryption services by a software as a service platform |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5557798A (en) * | 1989-07-27 | 1996-09-17 | Tibco, Inc. | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5826030A (en) | 1995-11-30 | 1998-10-20 | Excel Switching Corporation | Telecommunication switch having a universal API with a single call processing message including user-definable data and response message each having a generic format |
WO2002084976A1 (en) * | 2001-04-18 | 2002-10-24 | International Business Machines Corporation | Method and computer system for selecting an edge server computer |
US8204992B2 (en) * | 2002-09-26 | 2012-06-19 | Oracle America, Inc. | Presence detection using distributed indexes in peer-to-peer networks |
JP2010009520A (ja) * | 2008-06-30 | 2010-01-14 | Canon Inc | フロー処理装置及びメッセージ変換方法 |
US8879547B2 (en) * | 2009-06-02 | 2014-11-04 | Oracle International Corporation | Telephony application services |
EP2515243A1 (en) * | 2009-12-17 | 2012-10-24 | Telefónica, S.A. | Method and system for managing social notifications for mobile devices |
EP2360871B1 (en) * | 2010-02-15 | 2016-04-06 | Accenture Global Services Limited | Machine to machine architecture |
US8572706B2 (en) * | 2010-04-26 | 2013-10-29 | Vmware, Inc. | Policy engine for cloud platform |
US20110282949A1 (en) * | 2010-05-11 | 2011-11-17 | Leon Rivkin | Unified message management method and system |
US20120246334A1 (en) | 2011-03-21 | 2012-09-27 | Microsoft Corporation | Unified web service uri builder and verification |
-
2012
- 2012-12-20 US US13/721,506 patent/US9009354B2/en active Active
-
2013
- 2013-07-31 EP EP13003813.6A patent/EP2747382B1/en active Active
- 2013-12-17 CA CA2836853A patent/CA2836853C/en active Active
- 2013-12-19 JP JP2013262237A patent/JP6026992B2/ja active Active
- 2013-12-20 CN CN201310711738.4A patent/CN103888508B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1179872A (zh) * | 1995-11-30 | 1998-04-22 | 埃克斯塞尔公司 | 具有通用应用程序接口用于标准化交互呼叫处理通信的电信交换器 |
CN1275292A (zh) * | 1998-08-10 | 2000-11-29 | 电话通有限公司 | 在网关和服务中心之间进行路由确定的方法和装置 |
US8336089B1 (en) * | 2007-12-21 | 2012-12-18 | Emc Corporation | Method and apparatus for providing authentication and encryption services by a software as a service platform |
Also Published As
Publication number | Publication date |
---|---|
CN103888508A (zh) | 2014-06-25 |
CA2836853C (en) | 2021-09-07 |
US9009354B2 (en) | 2015-04-14 |
JP6026992B2 (ja) | 2016-11-16 |
US20140181322A1 (en) | 2014-06-26 |
EP2747382B1 (en) | 2016-12-21 |
CA2836853A1 (en) | 2014-06-20 |
EP2747382A1 (en) | 2014-06-25 |
JP2014123363A (ja) | 2014-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103888508B (zh) | 用于数据连接多样化的方法和系统及其存储介质 | |
US8606859B2 (en) | Method and system to communicate messages in a computer network | |
US8775671B2 (en) | Managing information exchange between business entities | |
US20130304666A1 (en) | Managing Information Exchange Between Business Entities | |
CN108958949B (zh) | 应用程序的调用方法及系统 | |
CN107979520B (zh) | 消息处理方法及消息处理装置 | |
US11784959B2 (en) | Message transfer agent architecture for email delivery systems | |
US10129360B2 (en) | Unified data networking across heterogeneous networks | |
JP2014123363A5 (zh) | ||
CN108768727B (zh) | 访问第三方服务的方法、电子装置及可读存储介质 | |
CN109120510B (zh) | 基于权限控制的邮件发送方法、装置及系统 | |
US9826371B2 (en) | SMS message management | |
US20100325215A1 (en) | Message requirements based routing of messages | |
US11544673B2 (en) | Email message receiving system in a cloud infrastructure | |
JP6073248B2 (ja) | 汎用プラグアンドプレイホームネットワーク環境で強化されたイベント通知を提供する方法及び装置 | |
CN115080274A (zh) | 业务处理方法、装置和系统、以及接口映射系统 | |
US10798039B2 (en) | Intelligent real-time SMTP routing | |
US10819796B2 (en) | Internet of Things connectivity platform | |
JP2021153316A (ja) | 携帯端末、システム、アクセス方法、およびプログラム | |
US9544426B2 (en) | Method for transmitting data related to a call | |
US11824941B2 (en) | Accessing representational state transfer application programming interfaces using simple mail transfer protocol | |
US9098362B1 (en) | Operating system (OS) independent application and device communication | |
US9524488B2 (en) | Method and apparatus pertaining to sharing information via a private data area | |
US7840660B1 (en) | System, method, and computer program product for determining whether a process identified utilizing a first proxy is associated with an additional proxy | |
EP2725490B1 (en) | Method and apparatus pertaining to sharing information via a private data area |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C53 | Correction of patent of invention or patent application | ||
CB02 | Change of applicant information |
Address after: German Waldo Applicant after: SAP AG Address before: German Waldo Applicant before: SAP AG |
|
COR | Change of bibliographic data |
Free format text: CORRECT: APPLICANT; FROM: SAP AG TO: SAP EUROPE AG |
|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |