SAP RFC介绍:关于sRFC,aRFC,tRFC,qRFC和bgRFCSAP 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的调用属性

  • 从aRFC接收结果

  • 保持远程上下文

  • aRFC的并行处理

关于aRFC变体的讲述:

  • CALL FUNCTION – STARTING NEW
    TASK

  • RECEIVE

  • WAIT
    UNTIL

  • RFC示例

异步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的调用属性

  • 起aRFC接收结果

  • 保远程上下文

  • aRFC的并行处理

关于aRFC变体的叙述:

  • CALL FUNCTION – STARTING NEW
    TASK

  • RECEIVE

  • WAIT
    UNTIL

  • RFC示例

事务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存在有内往行,这为意味她当殡葬系统上得是外于行。内为行在一段时间里只能处理系统资源允许处理的函数模块调用数量。它好防服务器被一个客户端阻塞。只有在劳动系统独立在一个舅于行的状况是匪容许存在的,因为用以客户端系统是外于行,来装顺序并堵住单独的采取阻塞客户端系统的通工作历程。

再次多系消息可见:

  • Queued Remote Function Call
    (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存在有内为行,这也意味她于殡葬系统上必然是外于行。内于行在一段时间里只能处理系统资源允许处理的函数模块调用数量。它可防服务器被一个客户端阻塞。只有当服务体系独立在一个舅于行的情景是无容许存在的,因为用以客户端系统是外为行,来装顺序并阻挠单独的使用阻塞客户端系统的任何工作经过。

再也多系信息可见:

  • Queued Remote Function Call
    (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的音, 请看:

  • bgRFC:
    配置

  • bgRFC:
    管理

  • 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使之不至于过载。

每个发送系统的互相的活跃调度程序数量与其的极其大连接数也是只是安排的,因此对于destination的Gateway也设有过载保护。

性能的熏陶:新bgRFC兑现之优化在大负荷、多靠之情事下特别明显。首次于运行的时段,线性对数可伸缩性(a
linear logarithmical
scalability)的RFC数据处理成可能(视系统兼容性而定)。

函数队排的工作特性使得,在拍卖单独的单元时,bgRFC不太好获取有目共睹的性提升,但是在应用还多或更快之硬件的时刻,则可明确提升吞吐量。限制因素会是数据库的性及这些单元的处理速度。

除此以外,新的API也是优化的同等片段。一些盈余的函数被移除,某些老的API也不再利用。这叫相关的行事更加平整和有效率,减少支持组织和支出集团的工作量。

再度多信息:

再次多关于bgRFC的消息, 请看:

  • bgRFC:
    配置

  • bgRFC:
    管理

  • 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远程调用

 

 

相关文章

admin

网站地图xml地图