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

粗粗10月份的时候做过一个有关两个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调度程序可用的最菲Nick斯接数。这个范围会保养当地的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地图