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.


Add a comment
10|10000 characters needed characters exceeded

Related questions

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:



    Add a 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.

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.