Thank you for your reply. On Tue, May 25, 2010 at 11:11 PM, Emmanuel Lecharny <[email protected]>wrote:
> On 5/25/10 4:40 PM, Lisen Mu wrote: > >> Hello, >> I've been implementing a service using java nio. However I've got a >> problem: >> some times all threads performing nio reads/writes blocked for seconds at >> concurrent mark-sweep GC. >> >> Then I found this: >> http://bugs.sun.com/view_bug.do?bug_id=6919638 >> and this: >> >> http://mail.openjdk.java.net/pipermail/hotspot-gc-use/2010-January/000486.html >> >> It seems to be a bug with current jvm implementation of gc locker usage. >> >> I suppose it's a fatal issue for mina project, for mina is totally based >> on >> nio. >> >> So any suggestion about this problem? any workaround under jdk6? >> >> > Suffice to say that's it's a JDK issue, not a mina's one... > It's true. The reason I posted here is that so far as I know, mina would be the most affected by this issue among popular open source projects. As a matter of fact, I'd been a user of mina about 2 years ago, however I'm not using mina for now, so it's definitely not a mina's issue. I'm using thrift instead, for cross language invocation. But thrift nio server has a performance cap at very high req/s throughput. So migrating to mina is still under consideration, too. I'm here for help, not to complain :) > However, if you read carefully the bug report ( > http://bugs.sun.com/view_bug.do?bug_id=6919638 ), they provide at least 2 > workarounds : > Indeed, I've noticed that they mentioned about ExplicitGCInvokesConcurrent and jdk7. In Addition, in their initial discussion they had suggested *CMSMaxAbortablePrecleanTime *to reduce the damage caused by this issue. http://mail.openjdk.java.net/pipermail/hotspot-gc-use/2010-January/000490.html > 1) Use -XX:-ExplicitGCInvokesConcurrent > 2) Use JDK 7 > I'm testing these 2 options currently, especially for 1), because I'm not going to jdk7 in production at this moment. As for 1), according to their discussion, I think it's a way to reduce the probability to trigger the bug, not to eliminate it. So it's not a complete workaround indeed, but whether the actual result is acceptable remains to be seen. Again, The reason I posted it here is that as I think mina is heavily affected, I suppose users of mina would be experienced on how to deal with this kind of problem. Is there any tip or suggestion about this, or is there any kind of done-deal conclusion already about this issue I failed to find out, please let me know. I would add that you can try with either IBM JDK or JRockit (not sure it > will work better though)... > > > > -- > Regards, > Cordialement, > Emmanuel Lécharny > www.nextury.com > > >
