|
Hi Andy, It's difficult to pinpoint things without knowing the application or seeing the code. And one of the problems with mailing lists and forums for apps of any complexity is the catch 22 that we need code to be precise about the problem, but the code is probably too long/involved for readers to put in a ton of free time to analyze. What I can do is point to some areas that might be helpful. My assumption is that yours is a properly written multi-threaded app or that a container is handling threading for you. a) Tuning Java: Besides using OPTIMIZE(40), what else can we do ? Optimization is not necessarily helpful if it doesn't impact bottlenecks. You need to do some profiling or benchmarking to try to find them. While some designs are bad enough to require rewriting, doing that, especially in a completely different language, won't help if the bottlenecks are still there. Once you've found them is when optimization should come into play. Networks are unreliable by nature. Check that you aren't having network latency problems. What are your customers comparing performance with? Is it slow all the time or does it get worse under load? What else is running on your machine? Theirs? Ensure that you are using the latest/greatest SOAP implementation. Your COBOL program could be the problem. Most AS/400 languages don't really handle threading, but just run serially. That's not language bashing, just a fact to be aware of - see "Threads considerations for ILE COBOL and RPG language" at <http://publib.boulder.ibm.com/infocenter/iseries/v5r3/ic2924/info/rzahw/rza hwileco.htm> Is the COBOL program getting reloaded? In the intermediate term, running multiple copies that read from and respond to message or data queues may improve things at the cost of more processing. In Chapter 14 "Making the Right Choices for SOAP Scability" of the book "Java Testing and Design", Frank Cohen claims a huge improvement by changing the SOAP encoding. You might want to take a look. The book is available for free download at <http://www.theserverside.com/books/prenticeHall/JavaTestingAndDesign/index. tss> HTH somewhat, Joe Sam Joe Sam Shirah - http://www.conceptgo.com conceptGO - Consulting/Development/Outsourcing Java Filter Forum: http://www.ibm.com/developerworks/java/ Just the JDBC FAQs: http://www.jguru.com/faq/JDBC Going International? http://www.jguru.com/faq/I18N Que Java400? http://www.jguru.com/faq/Java400 ----- Original Message ----- From: "Andres D'Aquila" <ad476@xxxxxxxxxxxxx> To: <JAVA400-L@xxxxxxxxxxxx> Sent: Sunday, July 18, 2004 9:53 PM Subject: Performance problems with Java SOAP client Hello ! Some of our customers want to use webservices on their ISeries (V5R2) machines We have made a Java SOAP client, but they say that the performance is unacceptable. The program is very simple: it receives some data, calls some COBOL program, and returns some data. We are exploring some ideas, and we would like to get some feedback of this forum: a) Tuning Java: Besides using OPTIMIZE(40), what else can we do ? b) Rewrite the program in some native language ( ILE C or ILE RPG): we know that there is a XML parser for procedural languages, but we have not found a SOAP library. Would it be complex to write our own SOAP routines ? We have some experience writing TCP programs, but not HTTP or SOAP programs in these languages. c) Get the Java client out of the Iseries: the program still will handle SOAP messages, but it will use TCP and plain messages to communicate with a ILE C program in the Iseries. I would appreciate your opinions and suggestions. Thank you, Andy D'Aquila
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.