× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



I really don't know what Jim's program is doing. But in re-reading, it WAS running with a 3-4 second processing time, but then Jim said something changed and it was running 30-40 seconds. Since I am not sure how he is doing what he is doing, my *guess* is that a system environment variable changed or the default JVM changed so that it was now running the 64 bit JVM which is about the only *easy* explanation in a 10-fold increase in processing time....

Pete Helgren
www.petesworkshop.com
GIAC Secure Software Programmer-Java
Twitter - Sys_i_Geek IBM_i_Geek

On 12/29/2016 10:41 AM, Vernon Hamberg wrote:
Pete - Are these calls coming from different jobs? Then the JVM warmup would be a killer - and I think you know that - if coming from ONE job, that startup is only done once per job.

Just a clarification that you probably didn't need!!

Vern

On 12/29/2016 9:13 AM, Pete Helgren wrote:
Depends upon how the call to JavaMail is implemented (I am assuming that JavaMail is used). If it is a call to JavaMail EACH time an email is sent, then the JVM warmup is probably killing the performance. Each invocation would start the JVM, invoke the JavaMail API, tear down the JVM and then repeat. That is my guess, not knowing how the code is written.

Better approach is to use something like AppServer4RPG that Dieter Bender created that starts a Java "server" and uses a dataqueue (I think) to pass requests to and from RPG without the JVM startup overhead. Might be worth a look.

Pete Helgren
www.petesworkshop.com
GIAC Secure Software Programmer-Java
Twitter - Sys_i_Geek IBM_i_Geek

On 12/28/2016 9:28 PM, midrange wrote:
Investigating a performance issue.

Is there anything (within reason) one can do increase performance in a java
tool (email) which is called from RPGLE.

Not a java programmer.

All the emails are sent to an Exchange server in the same lan.

Batch pool *base has 18-20 gig memory (auto adjust with paging set to
*calc).

Server not heavily loaded but same pool serving cgi web server, no heavy
traffic and no performance issues.

CPU usage during batch process is maybe 4%.

Power 8 and V7R1

Emails taking 30-40 seconds each, for a little text and a 0.5 to 3 meg
attachment.

Average batch process migh send anywhere from 2 to 200.

Two ethernet lines - 1G, Full Duplex, 1496 packet size

This started before the Power 8 upgrade., prev Power 7 also 7.1

Same code & tool, in past (maybe year ago)could send each email in 3-4
seconds - but cannot put a finger on what has changed, other than a catch up
of ptfs - several cumes and all the groups, but with nobody watching, not
positive it started then.

Win Exchange server takes in other bulk email (like scanners) with no
problem.

Can see the jdk is 6.0 (and I know it's going away).

Joblog shows setting environment variables, change directory, and then 30+
seconds later start next one.

Have no logs from when this was faster.


Already looking at other tools so no need to mention.. but a simple tweak
would be nice.


Jim






As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.