activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hiram Chirino (JIRA)" <>
Subject [jira] Commented: (AMQ-1689) (NIO)DataFileAppender does to many sync or force calls when there is little or no concurrency
Date Fri, 25 Apr 2008 15:22:43 GMT


Hiram Chirino commented on AMQ-1689:

I take it back.. I see how this helps.  In the case were you are doing lots of async writes
you avoid doing the flushes to disk so you avoid stalling your writes due to a disk sync.

I'm going to see if we can do a version of this that does not depend on a write delay tho.

> (NIO)DataFileAppender does to many sync or force calls when there is little or no concurrency
> ---------------------------------------------------------------------------------------------
>                 Key: AMQ-1689
>                 URL:
>             Project: ActiveMQ
>          Issue Type: Improvement
>          Components: Message Store
>    Affects Versions: 5.1.0
>         Environment: Windows, NIO force and File sync perform poorly
>            Reporter: Gary Tully
>            Priority: Minor
>         Attachments: fileAppenderBatch.patch
> Where NIO channel force and fileDescriptor.sync perform poorly and there is little concurrently,
the kaha DataFileAppender performs poorly.
> A test case where a single producer and consumer operate from either ends of a networked
pair of brokers shows the problem. It takes ~3 minutes to send 1000 messages on windows!.
The problem is that 70% of the time is spent in NIO channel.flush()
> The flush is batched if there are concurrent writes, but otherwise, a single write is
flushed immediately.
> My proposal is to have the batch processor batch till a batch is full or till a sync
flag is present in a write command or till some timeout expires or if the appender is closed.
> This reduces the number of force calls and with this change, my test case can do 1000
messages in ~1minute. 

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message