manbetx官方网站

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

十二月 26th, 2018  |  足球新闻

大约十一月份的时候做过一个有关多少个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调度程序可用的最菲尼克(Nick)斯接数。这些界定会爱惜地点的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调度程序可用的最重庆接数。这么些范围会珍惜地方的Gateway使之不至于过载。

每个发送系统的交互的活泼调度程序数量和它们的最菲尼克(Nick)斯接数也是可配置的,由此对于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远程调用

 

 

Your Comments

近期评论

    功能


    网站地图xml地图