I tried to search a bit on which garbage collector to use with webMethods Integration server and MWS, but couldn’t find any information on what is the recommended one. Is there any recommendation provided?
Also, we have configured -XX:+UseConcMarkSweepGC -XX:+UseParNewGC in the JVM parameters and for some reason, it keeps on showing Copy. Does the sequence of providing the above parameters matter?
What is the default garbage collector that webMethods uses?
Ninand, why you are looking for Garbage Collector properties, did you see any challenges in the providing functionalities of existing GC. I hope existing GC works fine which takes care of deleting un-necessary one from memory. Even I don’t suggest to run GC on demand.
Can you share the details about the existing garbage collector or point me to some documentation? Which garbage collector is used by Integration server?
Also, I have seen a lot of posts and ticket resolution solutions by SAG to use different Garbage collectors. SO I am not sure if they restrict usage to only the default ones.
As per my knowledge I do not see any specific information on the type of GC used by wM product suite. But I will again go through and check it for you.
I think its a question to SAG so that the product development team (might) provide you more details.
From what I can tell, IS and MWS do not explicitly choose a garbage collector. In other words, the garbage collector used is the default collector of the JVM, which is a good and safe approach for most installations. If you know your JVM version, you should be able to easily search for the default collector used.
I have raised a SAG ticket and will update the post once I get a response. They have confirmed that SAG doesn’t recommend any particular GC and the products take the JVM’s default GC.
We had a lot of performance issues a few year back and had to set Garbage collection parameters. Now we are have a new monitoring tool “Zenoss” and we are trying to configure the webMethods servers for GC monitoring. We observed that even though we have configured ParNewGC, the tool shows that the server is using CopyGC. Also, we want all our applications(including non webMethods application servers) on the same GC for consistency.
please check the documentation on Oracle for GC-Options.
These are differing dependend on JVM version.
For finding out possible options you can try the following commands:
java -help
java -X
Additionally you should configure verbose GC logging and redirect this to a file (add “-verbose:gc -Xloggc:” to JAVA_CUSTOM_OPTS in setenv.sh).
In this file you can see which type of GC was used with which result.