SAP RFC介绍:关于sRFC,aRFC,tRFC,qRFC和bgRFC

约莫十一月份的时候做过一个有关六个SAP系统间资金分摊传输的门类,使用到了RFC(Remote
Function
Call)技术。因为在此之前所有医疗-CRM相关接口开发的经历,以为自己对RFC很熟练了,做起来会很顺畅,不想要么遭逢了些问题。打算整治一下关于它们的内容,进一步学习。

约莫七月份的时候做过一个有关五个SAP系统间资产分担传输的花色,使用到了RFC(Remote
Function
Call)技术。因为在此以前所有医疗-CRM相关接口开发的经验,以为自己对RFC很明白了,做起来会很顺畅,不想要么遇到了些问题。打算整治一下有关它们的始末,进一步深造。

正文内容的紧要来自是SAP的英文文档。会相比较青睐基本概念上的东西,偶尔涉及实际的代码、配置。后续可能会按照自家的其实应用状况更新更详尽的介绍。

正文内容的重大来源是SAP的英文文档。会比较讲究基本概念上的东西,偶尔涉及实际的代码、配置。后续可能会基于自己的实际上采纳情状更新更详尽的介绍。

 

 

本文链接:http://www.cnblogs.com/hhelibeb/p/8066753.html

正文链接:http://www.cnblogs.com/hhelibeb/p/8066753.html

总述

对此SAP与SAP系统及SAP与非SAP系统里头的连接而言,远程函数调用(Remote
Function
Call,以下简称RFC)是一种标准的通信模式,它能够兑现对长距离系统中函数的调用。

持有RFC类型都经过CPI-C或TCP/IP协议举行传输。
它们组成了一种Gateway通信。

正文是对负有RFC变体的叙述,它们拥有不同的表征和符合的应用情形。

总述

对此SAP与SAP系统及SAP与非SAP系统之间的连日而言,远程函数调用(Remote
Function
Call,以下简称RFC)是一种标准的通信形式,它可以实现对长途系统中函数的调用。

抱有RFC类型都通过CPI-C或TCP/IP协议举办传输。
它们构成了一种Gateway通信。

本文是对拥有RFC变体的叙说,它们具有不同的特点和切合的利用意况。

同步RFC:sRFC

同步RFC(Synchronous
RFC,sRFC)是最基本的RFC格局。在sRFC调用中,调用者会等待远程被调用者的处理过程。

它的语法模式是:

CALL FUNCTION func DESTINATION dest. 

优良的应用意况包括:

  • 销售:为不同体系创立采购订单(central sales)。
  • 销售:对于某个查询,在供应商系统里举办一个对此指定物料的可用性检查。
  • 物品管理:在另一个系统里对某个物料订单执行来源判断。
  • CRM/SRM:对SAP后端系统倡导某个物料的可用性检查。
  • CRM/SRM:在SRM组件中开创采购订单时,在会计集中核算中为您的资产主题开展预算检查。
  • 会计:向会计集中核算体系请求一个资产中央清单。
  • BW:调用BW组件(商业音信仓库)来呼吁一个专程的evaluation。

同步RFC:sRFC

同步RFC(Synchronous
RFC,sRFC)是最基本的RFC形式。在sRFC调用中,调用者会等待远程被调用者的处理过程。

它的语法形式是:

CALL FUNCTION func DESTINATION dest. 

独立的接纳情况包括:

  • 销售:为不同连串创立采购订单(central sales)。
  • 销售:对于某个查询,在供应商系统里实施一个对此指定物料的可用性检查。
  • 物品管理:在另一个系统里对某个物料订单执行来源判断。
  • CRM/SRM:对SAP后端系统倡导某个物料的可用性检查。
  • CRM/SRM:在SRM组件中开创采购订单时,在先生集中核算中为你的本金核心开展预算检查。
  • 会计师:向先生集中核算体系请求一个本金中央清单。
  • BW:调用BW组件(商业信息仓库)来呼吁一个专程的evaluation。

异步RFC:aRFC

异步RFC(Asynchronous
RFC,aRFC)类似与tRFC,用户在持续调用会话此前,不需要拭目以待它们的到位。可是,aRFC和tRFC之间也设有几点不同的地点:

  • 当调用者起始一个aRFC的时候,被调用的服务器必须可以接受请求。aRFC的参数不会记录在数据库中,而是直接发送给对方服务器。
  • aRFC允许用户与长途系统开展交互式对话。
  • 调用程序可以从aRFC接收结果。

您可以在当你需要建立和一个远端系统的连天、但是指望在调用RFC后不愿意等待结果而是希望持续处理时使用aRFC。aRFC也得以发送给相同的系统。在这种境况下,系统打开一个新的对话(窗口)。你可以在调用对话和被调用会话间切换。使用下面的说话开启一个aRFC:

CALL FUNCTION Remotefunction STARTING NEW TASK Taskname

DESTINATION ...

EXPORTING...

TABLES ...

EXCEPTIONS...

 RECEIVE RESULTS FROM FUNCTION Remotefunction 用于一个子程序内经受aRFC的调用结果。可以应用以下收取参数:

  • IMPORTING

  • TABLES

  • EXCEPTIONS

附加项KEEPING
TASK
阻止连接在吸收处理结果后关门。相关的长途上下文(滚动区域)保持可以引用的事态,直至调用者终止连接。

更多关于aRFC的信息方可从以下地点拿到:

至于aRFC变体的描述:

异步RFC:aRFC

异步RFC(Asynchronous
RFC,aRFC)类似与tRFC,用户在延续调用会话在此之前,不需要等待它们的形成。然则,aRFC和tRFC之间也存在几点不同的地点:

  • 当调用者起头一个aRFC的时候,被调用的服务器必须可以吸纳请求。aRFC的参数不会记录在数据库中,而是径直发送给对方服务器。
  • aRFC允许用户与远程系统开展交互式对话。
  • 调用程序可以从aRFC接收结果。

您可以在当你需要建立和一个远端系统的接连、不过希望在调用RFC后不愿意等待结果而是期待持续处理时利用aRFC。aRFC也足以发送给相同的系列。在那种情形下,系统打开一个新的对话(窗口)。你可以在调用对话和被调用会话间切换。使用下边的口舌开启一个aRFC:

CALL FUNCTION Remotefunction STARTING NEW TASK Taskname

DESTINATION ...

EXPORTING...

TABLES ...

EXCEPTIONS...

 RECEIVE RESULTS FROM FUNCTION Remotefunction 用于一个子先后内接受aRFC的调用结果。可以采用以下收取参数:

  • IMPORTING

  • TABLES

  • EXCEPTIONS

附加项KEEPING
TASK
截留连接在收受处理结果后关闭。相关的长距离上下文(滚动区域)保持可以引用的情景,直至调用者终止连接。

更多关于aRFC的信息方可从以下地点获得:

关于aRFC变体的叙说:

事务RFC:tRFC

在拔取事务RFC( transactional
RFC,tRFC)的时候,被调用的函数模块在被调用系统中恰恰运行一遍(Exactly Once)。

远端系统不需要在RFC客户端程序运行tRFC的时候可用。tRFC组件将被调用的RFC函数和连锁数据存储在SAP系统的数据库里,包含一个唯一的工作标识符(transaction
identifier,TID)。

假如调用发送了,接收系统却是宕机状态,调用会保留在地面队列中一段时间。调用对话程序可以在不等待远程调用成功/失利的意况下连续运行。假诺接收系统在一段时间后依然不可用,调用将被计划为后台作业运行。

tRFC使用后缀IN BACKGROUND TASK.

就和协办调用一样,参数
DESTINATION在长途系统定义了程序上下文。结果是,假若您对一个destination重复地调用一个函数(或者一遍性调用三个函数),则足以在同等的光景文中访问被调用函数的全局数据。。

系统会在表ARFCSSTATE和表ARFCSDATA中著录远程连接请求和它们的一体参数值。你可以应用事务SM58来查阅。当调用程序到达COMMIT
WORK
说话时,远程调用会被转化到给对方系统。

在两个COMMIT
WORK
期间,所有的具有同一个destination的tRFC属于同一个逻辑单元(LUW)。

tRFC处理流图示:

新普京娱乐场 1

你可以在一些情状下利用应用tRFC,比如,对于需要在业务的不比等级更新相关数据库表的复杂性的处理过程。

tRFC会确保所有的计划更新在程序到达COMMIT WORK语句时被执行。

(注意:tRFC的概念中不能够有任何EXPORT参数,因为调用程序中一旦有IMPORT参数,就会招致语法错误。其余,你也不得以对推行回调的先后举行异步调用)

系统可用性:

假若远程系统不可用,SAP系统会将报表RSARFCSE计划为后台作业,并将有关的作业ID作为变式,再开展拍卖。这个表格程序会再次地被调用,直到它成功地连接对方系统停止。

当被计划为后台作业时,RSARFCSE自动地以一个年华距离运行(默认是每15分钟运行五遍,最多尝试30次)。你可以透过进步程序SABP0000和SABP0003来自定义该时间间隔。

透过SM59部署destination,选拔一个destination并且采用编辑->TRFC选项,在这边定义连接尝试次数上限和重新连接尝试的年华距离。

新普京娱乐场 2

比方在品尝指定的次数后依然不足抵达相应的系统,系统会停止调用RSARFCSE,并写入状态CPICERR至表ARFCSDATA中。在另一个点名的日子后(默认是8天),在表ARFCSSTATE内的条规也会被删去。当然也足以定制那些时间,或者手动在SM59启动相应的作业条目。

tRFC的缺点:

  • tRFC独立地处理所有LUW。依照激活的tRFC数量,程序有可能会精晓地降低调用系统和被调用系统的性质。
  • 此外,在采用中定义的LUW的调用顺序是不可能拿到保障的。由此不能确保事务会遵照使用期望的顺序运行。tRFC唯一能担保的只有:所有LUW都会或早或晚地被传输。

可以在这边查看tRFC语句的讲述:

CALL FUNCTION IN BACKGROUND
TASK

事务RFC:tRFC

在使用事务RFC( transactional
RFC,tRFC)的时候,被调用的函数模块在被调用系统中正好运行一回(Exactly Once)。

远端系统不需要在RFC客户端程序运行tRFC的时候可用。tRFC组件将被调用的RFC函数和血脉相通数据存储在SAP系统的数据库里,包含一个唯一的作业标识符(transaction
identifier,TID)。

若果调用发送了,接收系统却是宕机状态,调用会保留在地头队列中一段时间。调用对话程序可以在不等待远程调用成功/失败的场馆下继续运行。假若收到系统在一段时间后仍然不可用,调用将被计划为后台作业运行。

tRFC使用后缀IN BACKGROUND TASK.

就和共同调用一样,参数
DESTINATION在长距离系统定义了程序上下文。结果是,如果你对一个destination重复地调用一个函数(或者一回性调用五个函数),则足以在同等的左右文中访问被调用函数的全局数据。。

系统会在表ARFCSSTATE和表ARFCSDATA中记录远程连接请求和它们的所有参数值。你可以拔取事务SM58来查阅。当调用程序到达COMMIT
WORK
言辞时,远程调用会被转正到给对方系统。

在两个COMMIT
WORK
期间,所有的兼具同一个destination的tRFC属于同一个逻辑单元(LUW)。

tRFC处理流图示:

新普京娱乐场 3

您可以在少数情形下使用使用tRFC,比如,对于急需在作业的不比阶段更新相关数据库表的复杂的处理过程。

tRFC会确保所有的计划更新在先后到达COMMIT WORK语句时被执行。

(注意:tRFC的定义中不可能有任何EXPORT参数,因为调用程序中假如有IMPORT参数,就会促成语法错误。另外,你也不得以对履行回调的顺序开展异步调用)

系统可用性:

一经远程系统不可用,SAP系统会将报表RSARFCSE计划为后台作业,并将有关的作业ID作为变式,再开展拍卖。这一个表格程序会再也地被调用,直到它成功地连续对方系统截止。

当被计划为后台作业时,RSARFCSE自动地以一个时间距离运行(默认是每15分钟运行三次,最多尝试30次)。你可以经过增强程序SABP0000和SABP0003来自定义该时间距离。

经过SM59配置destination,选用一个destination并且选取编辑->TRFC选项,在此地定义连接尝试次数上限和再度连接尝试的年华距离。

新普京娱乐场 4

倘若在品味指定的次数后依然不足抵达相应的序列,系统会停下调用RSARFCSE,并写入状态CPICERR至表ARFCSDATA中。在另一个指定的时日后(默认是8天),在表ARFCSSTATE内的条目也会被剔除。当然也可以定制那多少个时刻,或者手动在SM59起首相应的事体条目。

tRFC的缺点:

  • tRFC独立地处理所有LUW。遵照激活的tRFC数量,程序有可能会领会地回落调用系统和被调用系统的性能。
  • 另外,在采取中定义的LUW的调用顺序是不可能赢得保持的。由此不能保证事务会依照使用期望的一一运行。tRFC唯一能确保的惟有:所有LUW都会或早或晚地被传输。

可以在此间查看tRFC语句的叙说:

CALL FUNCTION IN BACKGROUND
TASK

队列RFC:qRFC

队列RFC(queued Remote Function
Call,qRFC)是tRFC的一个扩大。它同意你将七个tRFC调用序列化为一个行列。

qRFC调用会首先被函数模块TRFC_SET_QUEUE_NAME举行体系化处理,然后这个调用被一个tRFC举行实际的dispatch。

qRFC可以看作外向队列(由调用系统体系化)处理,或者是内向队列(由被调用系统体系化)。

* *

以下是两种业务数据传输的光景(为啥图片中的文字是德文?):

新普京娱乐场 5

场景1:tRFC

这一场景适用于数据互相间独立发送的情景。系统1中存在一个调用应用(client)使用tRFC连接系统2中的被调用应用(r
server)。在这场景中,数据由tRFC传输,意味着发送到目标序列的函数模块调用会被担保只运行两回。你不可以定义函数模块运行的一一和岁月。假设传输过程中发出了错误,系统会计划一个后台作业,在15分钟后再行发送函数模块调用。

场景2:带有外向队列的qRFC

在本场景中,发送系统应用一个活泼队列来连串化被发送的数目。这表示发送系统的外向队列包含着存在依靠关系的函数模块调用。当数码发送时,会维持确定的顺序,并且调用会以正好五遍且有序的措施(exactly once in order)发送给目的体系。

专注:目的连串处理时不需要变更qRFC的逐条,可是,它必须开启tRFC效能。

场景3:带有内向队列的qRFC(以及活跃队列)

在这个场合下,不仅发送系统(client)有外向队列,目的系列也有内向队列。假若qRFC存在有内向队列,那也意味它在发送系统上自然存在外向队列。内向队列在一段时间里只好处理系统资源允许处理的函数模块调用数量。它可以预防服务器被一个客户端阻塞。唯有在劳动序列独立存在一个内向队列的场所是不容许存在的,因为需要在客户端系统存在外向队列,来设置顺序并阻挠单独的利用阻塞客户端系统的全套办事历程。

更多相关新闻可见:

队列RFC:qRFC

队列RFC(queued Remote Function
Call,qRFC)是tRFC的一个恢宏。它同意你将两个tRFC调用序列化为一个连串。

qRFC调用会首先被函数模块TRFC_SET_QUEUE_NAME举行连串化处理,然后这个调用被一个tRFC举办实际的dispatch。

qRFC可以当作外向队列(由调用系统类别化)处理,或者是内向队列(由被调用系统系列化)。

* *

以下是两种工作数据传输的气象(为何图片中的文字是德文?):

新普京娱乐场 6

场景1:tRFC

该场景适用于数据彼此间独立发送的动静。系统1中留存一个调用应用(client)使用tRFC连接系统2中的被调用应用(r
server)。在这场景中,数据由tRFC传输,意味着发送到目标体系的函数模块调用会被担保只运行五次。你不可以定义函数模块运行的逐条和岁月。尽管传输过程中暴发了错误,系统会计划一个后台作业,在15秒钟后重新发送函数模块调用。

场景2:带有外向队列的qRFC

在这一场景中,发送系统运用一个活蹦乱跳队列来连串化被发送的多寡。这意味发送系统的活跃队列包含着存在依靠关系的函数模块调用。当数码发送时,会维持确定的相继,并且调用会以正好几回且有序的点子(exactly once in order)发送给目的系列。

只顾:目的系列处理时不需要改变qRFC的次第,不过,它必须开启tRFC效能。

境况3:带有内向队列的qRFC(以及活跃队列)

在那多少个情景下,不仅发送系统(client)有外向队列,目的体系也有内向队列。尽管qRFC存在有内向队列,那也意味它在发送系统上必然存在外向队列。内向队列在一段时间里只好处理系统资源允许处理的函数模块调用数量。它可以防范服务器被一个客户端阻塞。唯有在劳务体系独立存在一个内向队列的景色是无法存在的,因为急需在客户端系统存在外向队列,来安装顺序并阻碍单独的运用阻塞客户端系统的万事工作经过。

更多相关音讯可见:

后台RFC:bgRFC

后台RFC:bgRFC

使用

bgRFC(Background Remote Function
Call)允许被调用程序稍晚一些接收数据,而不是一头接收。接收数据的时候,需要保证数据只现出五遍且无序(
transactional) 、或者只现出一回且有序(queued)。

应用bgRFC举行异步调用,会有如下优势:

  • 在同一个SAP系统内(同一个类别ID,同一个client):解耦,同时提供了并行化能力。负载会分布在该体系的可用的应用服务器上。那些bgRFC场景被当做一个内向程序。

  • 在几个远程SAP系统间:解耦,并且经过可以实现利用或作业场景的物理细分。异步调用的结果是,调用者和被调用者的应用服务器的重要特性差别可以得到平衡。记录工作在调用系统中成功。那多少个情景是一个欢蹦乱跳程序。

  • 五个程序结合为外-内程序:该措施可以博得全套优化增选的优势。但是,假使你挑选了这么做,数据会被记录五回,一回是调用者(外向处理)、一遍是被调用应用(
    内向程序的奇异系列)。这致使数据库、应用服务器会有额外的承负。

bgRFC使用队列协会不同的调用。当一个调用同时被放置在四个体系的时候,系统会为这个队列创造依赖。这带来了一个同步点(synchronization
point),类似于锁。

一经一个调用处于依赖队列中,那么当且仅当它位于依赖队列的最上层时,它才会被处理。

对此同一个destination,不得以将bgRFC和tRFC、qRFC结合起来使用。然而,对于不同的destination,你可以定义你想行使的简报类型。

语法:

 CALL FUNCTION 'function_name'

IN BACKGROUND UNIT unit

          EXPORTING ... 

 

使用

bgRFC(Background Remote Function
Call)允许被调用程序稍晚一些接收数据,而不是一块接收。接收数据的时候,需要保证数据只现出五回且无序(
transactional) 、或者只出现三回且有序(queued)。

应用bgRFC举办异步调用,会有如下优势:

  • 在同一个SAP系统内(同一个连串ID,同一个client):解耦,同时提供了并行化能力。负载会分布在该连串的可用的应用服务器上。这多少个bgRFC场景被作为一个内向程序。

  • 在几个远程SAP系统间:解耦,并且通过能够兑现拔取或业务场景的大体细分。异步调用的结果是,调用者和被调用者的应用服务器的要紧特性差距可以赢得平衡。记录工作在调用系统中成就。那个现象是一个活泼程序。

  • 三个程序结合为外-内程序:该办法得以获取全套优化增选的优势。然则,假设您采取了这般做,数据会被记录一遍,两遍是调用者(外向处理)、两回是被调用应用(
    内向程序的极度规体系)。这造成数据库、应用服务器会有至极的担当。

bgRFC使用队列社团不同的调用。当一个调用同时被放置在五个连串的时候,系统会为这一个队列创立倚重。这带来了一个同步点(synchronization
point),类似于锁。

万一一个调用处于依赖队列中,那么当且仅当它位于依赖队列的最上层时,它才会被处理。

对于同一个destination,不能够将bgRFC和tRFC、qRFC结合起来使用。不过,对于不同的destination,你可以定义你想接纳的报导类型。

语法:

 CALL FUNCTION 'function_name'

IN BACKGROUND UNIT unit

          EXPORTING ... 

 

集成

从qRFC转换为bgRFC的应用程序,必须协理成立qRFC中的队列与bgRFC中的队列之间的暂时链接的迁徙方案。通过这样的方案,可以保证科学的行列顺序,虽然是在从qRFC变为bgRFC的随时。

在意:从bgRFC改回qRFC是不容许的。

在SAP NetWeaver Release
7.11以及更高的本子上,bgRFC也可以和basXML(二进制ABAP系列化XML)通信协议一起使用。

集成

从qRFC转换为bgRFC的应用程序,必须补助创设qRFC中的队列与bgRFC中的队列之间的暂时链接的迁徙方案。通过如此的方案,可以保证科学的队列顺序,即使是在从qRFC变为bgRFC的每天。

在意:从bgRFC改回qRFC是不容许的。

在SAP NetWeaver Release
7.11以及更高的本子上,bgRFC也得以和basXML(二进制ABAP连串化XML)通信协议一起使用。

架构

新普京娱乐场,传统的qRFC模型只有在数据被RFC调度程序处理的时候才探测各个独立单元之间的依靠关系。对于每个destination,外向调度程序都会敞开一个调度程序来拍卖这些destination的数目。

与之相对的是,bgRFC的依靠关系在数码存储的时候就决定了。通过这样做,RFC调度程序可以两回性找到所有的内需被拍卖的单元,并且通过最小的用力(minimum
effort)就足以找到它们中间的依赖性关系。在存储数据的时候需要付出的附加努力,则可以在很大程度上由数据库设计中的高效能算法和优化补偿。

各种客户端定义一定数额的活跃计划,并且并行处理队列负载,即便目的系列的负载会在一个较短的岁月间隔后被确定,不过也因此会愈来愈可靠。

单元和队列的删除程序

和价值观的次第不同,如果有此外单元或队列被去除,信赖依旧会维持。因为单元会被先打上标记,并且在这之后只是被调度程序删除。

新普京娱乐场 7

如图,在剔除了Unit4之后,Unit6只可以在Unit3之后运行,因为Unit4只有在调度程序处理过Unit3之后才会被去除。假使您剔除掉queue2,那么会时有发生上边的动静:

新普京娱乐场 8

Unit6会在Unit2然后运行,所有选定的unit都会被调度程序删除。

在意:删除队列或者单元总是有着高风险的。在大家的例证里,它会导致Unit6碰着错误,或者造成目的类此外数据库不平等,因为它的前提Unit4因为被删去而从不运行。

Gateway:Gateway是另一个机密的习性瓶颈,在bgRFC中,它也收获了优化。bgRFC中的新的概念是会调剂在一台应用服务器上同时运行的外向调度程序的最大数量,也会调剂全部RFC调度程序可用的最亚松森接数。那些限制会维护当地的Gateway使之不至于过载。

每个发送系统的相互的龙腾虎跃调度程序数量和它们的最达累斯萨兰姆接数也是可安排的,由此对于destination的Gateway也存在过载保养。

特性的影响:新bgRFC兑现的优化在高负荷、多看重的情形下特别强烈。第一次运行的时候,线性对数可伸缩性(a
linear logarithmical
scalability)的RFC数据处理成为可能(视系统包容性而定)。

函数队列的业务特性使得,在处理单独的单元时,bgRFC不太容易得到有目共睹的属性进步,可是在使用更多或者更快的硬件的时候,则足以彰着提高吞吐量。限制因素会是数据库的习性和这一个单元的处理速度。

除此以外,新的API也是优化的一有些。一些剩余的函数被移除,某些旧的API也不再采纳。这使得相关的干活越来越平缓和有效用,缩短补助协会和支付团队的工作量。

更多音信:

更多关于bgRFC的音信, 请看:

架构

价值观的qRFC模型只有在数额被RFC调度程序处理的时候才探测各种独立单元之间的借助关系。对于每个destination,外向调度程序都会张开一个调度程序来处理这一个destination的数据。

与之绝对的是,bgRFC的借助关系在数据存储的时候就控制了。通过如此做,RFC调度程序可以四回性找到所有的需要被处理的单元,并且通过最小的鼎力(minimum
effort)就足以找到它们之间的依赖关系。在存储数据的时候需要提交的附加努力,则足以在很大程度上由数据库设计中的高效能算法和优化补偿。

各类客户端定义一定数额的活跃计划,并且并行处理队列负载,尽管目的系列的负载会在一个较短的日子间隔后被确定,不过也因此会越加纯粹。

单元和队列的删除程序

和观念的顺序不同,假设有另外单元或队列被去除,依赖仍然会保持。因为单元会被先打上标记,并且在这事后只是被调度程序删除。

新普京娱乐场 9

如图,在剔除了Unit4之后,Unit6只好在Unit3之后运行,因为Unit4只有在调度程序处理过Unit3之后才会被剔除。假若你剔除掉queue2,那么会发出上面的处境:

新普京娱乐场 10

Unit6会在Unit2事后运行,所有选定的unit都会被调度程序删除。

留意:删除队列或者单元总是有着风险的。在大家的事例里,它会造成Unit6遭受错误,或者导致目标体系的数据库不同等,因为它的前提Unit4因为被去除而并未运行。

Gateway:Gateway是另一个诡秘的性能瓶颈,在bgRFC中,它也博得了优化。bgRFC中的新的定义是会调剂在一台应用服务器上还要运行的活跃调度程序的最大数额,也会调剂全部RFC调度程序可用的最Austen接数。这多少个限制会敬重当地的Gateway使之不至于过载。

每个发送系统的竞相的活泼调度程序数量和它们的最阿比让接数也是可配置的,由此对于destination的Gateway也存在过载珍视。

特性的影响:新bgRFC落实的优化在高负荷、多依赖的状态下特别扎眼。第一次运行的时候,线性对数可伸缩性(a
linear logarithmical
scalability)的RFC数据处理成为可能(视系统包容性而定)。

函数队列的事体特性使得,在处理单独的单元时,bgRFC不太容易取得举世瞩目标性能提高,然而在行使更多仍然更快的硬件的时候,则可以显然提高吞吐量。限制因素会是数据库的特性和这么些单元的处理速度。

另外,新的API也是优化的一有些。一些剩下的函数被移除,某些旧的API也不再行使。这使得相关的劳作愈发平缓和有效用,减弱协理团队和支付公司的工作量。

更多音信:

更多关于bgRFC的音信, 请看:

本地数据队列:LDQ

地点数据队列(Local Data Queue
)是一种特另外RFC通信。在这种利用情状下,系统不会主动发送数据。相反,依照拉取规则,系统会把多少存储在本土,直到被外表系统调用(比如移动装备)。

LDQ可以替代原先由qRFC在不发送场景下提供的机能(qRFC No
Send)。相比之下它提供了更有功能的数据模型。

更多内容:

Local Data Queue
(LDQ)

地面数据队列:LDQ

当地数据队列(Local Data Queue
)是一种特另外RFC通信。在这种应用状况下,系统不会积极性发送数据。相反,依照拉取规则,系统会把数量存储在本土,直到被外表系统调用(比如移动装备)。

LDQ可以代替原先由qRFC在不发送场景下提供的意义(qRFC No
Send)。对比之下它提供了更有效能的数据模型。

更多内容:

Local Data Queue
(LDQ)

名词对照

scheduler:调度程序

outbound  queue:外向队列

inbound queue:内向队列

 

相关小说:ABAP
RFC远程调用

 

 

名词对照

scheduler:调度程序

outbound  queue:外向队列

inbound queue:内向队列

 

连带小说:ABAP
RFC远程调用

 

 

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图