SAP 接口 inbound (SAP CALL JAVA ) 负载均衡说明

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ot512csdn/article/details/81015901

前面文章讲过 SAP和外围系统接口有2中方式:

一、inbound  (SAP CALL JAVA 、.net)

二、outbound  (JAVA 、.net  CALL  SAP)


本文重点讲述难度高的 inbound  (SAP CALL JAVA 、.net),这种方式的负载均衡情况。

SAP接口程序把数据传给外围系统,通过语法 CALL FUNCTION 'XXX' DESTINATION 'YYY_GATEWAY'

这个YYY_GATEWAY 是,SAP内部的MessageServer:


当多个外围的服务器连接到SAP后,每一个服务器都会有一个长连接:

比如下图有3个长连接连接到了SAP开发服务器,你可以把三个长连接,理解为三条路。


那么, SAP的MessageServer(GateWay)是怎么控制一个SAP内部的接口输出数据,

走哪一条路到达外围系统呢(负载均衡)?


下面这段说明,来自Oracle SOA中间件:《Oracle® Fusion Middleware Application Adapters Application Adapter for SAP R/3 (SAP JCo 3.0) User's Guide for Oracle WebLogic Server  ,12c Release 1 (12.1.3.0.0) 》 


3.5.3 Load Balancing SAP Configuration 

In cases where a large amount of traffic on a particular RFC destination is required, increase the thread output size in SAP and increase the thread count and try and keep the ratio of Gateway threads to server threads at the same 1:3 ratio. For example, if the Gateway has 3 active threads for destination "X", on the outbound server channel side, the server thread count is now 9. 

In addition to Gateway load balancing, the amount of SAP Gateway threads can be increased. For more information, consult your SAP R/3 system administrator. When more than one Program ID with the same name is registered for one SAP Gateway (using a separate JVM), the Gateway can be enabled for a load balancing scenario, depending on the parameters in the Gateway profile on the SAP R/3 system. It is recommended to consult an SAP R/3 system administrator for more information. 

However, the profile is either set to 0 (no load balancing), 1 (lowest counter), or 2 (lowest load). The SAP R/3 system administrator can provide the required information on how to configure your destinations to take advantage of each situation. If load balancing is not enabled and you register multiple server channels with the same Program ID without performing Oracle schema validation, then it is possible to receive IDocs in the wrong channel because there is no routing on the channels or destinations.


SAP官方的说明:

Defines the type of load balancing for registered programs. The following values are permitted:

  • 0 : No load balancing; the first free registered program is used.
  • 1 : The program with the lowest counter is used. Every time a registered program is assigned a request, the counter is increased by one.
  • 2 : The program with the lowest load is used. The load is determined as defined by profile parameter gw/reg_lb_ip.

Default value

1

Dynamic

Yes

gw/reg_lb_default

Default value for the load of a server if its IP address cannot be found in the list.

Default value

20

Dynamic

Yes

gw/reg_lb_ip

Specifies the load value for an IP address or for a range of IP addresses. A host name can be entered in the place of an IP address. The gateway then determines the IP address for the host name. 
When the registered program logs onto the gateway, the IP address is used to determine what the load of the IP address is. The system searches the list in the order specified by the profile parameter. This value is added to the load when this program receives a request. If the IP address is not found, the system uses the value defined by parameter gw/reg_lb_default. This ensures that a strong server is assigned more requests than a weaker server. A server that registers itself with the gateway receives as initial value the highest load of all servers with the same registration ID. If no servers are registered with this ID, or if no requests have been assigned to these servers, the value is 0.


资料都指向了一个参数:gw/reg_lb_level,

我看了一下SAP开发机,这个值是1,应该就是我想要的,有负载均衡的功能。



  • 1 : The program with the lowest counter is used. Every time a registered program is assigned a request, the counter is increased by one.

SAP MessageServer (Gateway)会管理这些通向外围系统的道路,这些道路每用一次,会有一个计数器加1,而发送数据走哪一条路,SAP MessageServer会按lowest counter最少次数的,先用这个原则来实现负载均衡。


PS: 热情满满的打了半天字,CSDN居然发帖丢了。。。。只能勉强写完。 


最好的东西留在最后,理解了下面这幅图,你就理解了“SAP发”这种模式的“负载均衡”:



猜你喜欢

转载自blog.csdn.net/ot512csdn/article/details/81015901
SAP