Skip to Content
author's profile photo Former Member
Former Member

JCo Server Load Balancing

We have created a JCo Server interface using RFC modules in SAP to communicate with an external web based system. The SAP system calls the external application via tRFC and qRFC as needed from the business transaction. We have achieved high throughput by clustering our external web application server, putting a load balancer in front of that web application, and finally creating multiple JCo Server instances within own JVMs (currently 6 instances with 5 servers each). The JCo Server is registered to the central gateway of the SAP system using gwhost, gwserv, and progid. With this setup we have successfully performed up to 50,000 transactions an hour.

My understanding is that the SAP gateway will act as a load balancer on the SAP side. Is this right or should we consider to install a hardware load balancer "in front" of the SAP gateway and try to map this to the message server instead? Or concern is that our JCo Server process will "flood" the central gateway and take all resources away form the SAP system. Unfortunately the JCo Server class doesn't allow to connect to any other resource on the SAP system then the central gateway.

Any suggestions or real live examples are appreciated.

Stefan

Add comment
10|10000 characters needed characters exceeded

1 Answer

  • author's profile photo Former Member
    Former Member
    Posted on Jul 09, 2004 at 08:00 AM

    Hi Stefan,

    I've recently read through the SAP Gateway documentation and it explains about Load Balancing for registered programs. Maybe it'll answer your questions?!

    Have a look:

    http://help.sap.com/saphelp_nw04/helpdata/en/51/aea438ec2a7e26e10000009b38f8cf/frameset.htm

    Regards,

    Ivo

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      Hi Stefan

      We are doing a similar project wherein we are calling a middleware server based on the JCO.Server from SAP.

      You did say that you have achieved a throughput of 50000 transactions and we are interested in knowing how ?.

      Could you briefly tell use how you achieved it. In our case we have one instance of the JCO.Server working on the JVM.

      Here is what we did .

      We tried to start two instances of the middle ware server on the same JVM on the same BOX and register it with the gateway . This dint work .

      We were successfull in starting two instances of the middleware server from two different JVM on two different boxes and registering it at the gateway under the same id.

      This we know will work as the gateway will use its load balancing to distribute load between the two instances.

      But we are interested in knowing how we can start more then one server instance on a given JVM.

      Our questions are

      It we have threading in our middleware server, we believe it will not help as if the SAP gateway server has opened an connection with one instance of the middleware server. It is not possible for it to open another one...till the first one is complete. Hence threading within the middleware server is redundant.

      Your thoughts and comments are appreciated.