[rabbitmq-discuss] RabbitMQ performance tips, collected with sweat and blood

Matthew Sackman matthew at rabbitmq.com
Mon Aug 15 17:01:47 BST 2011


On Mon, Aug 15, 2011 at 08:53:22AM -0700, Eugene Kirpichov wrote:
> On Mon, Aug 15, 2011 at 8:51 AM, Matthew Sackman <matthew at rabbitmq.com> wrote:
> > On Mon, Aug 15, 2011 at 08:33:46AM -0700, Eugene Kirpichov wrote:
> >> Thanks, this is interesting. why so? I thought the i/o pattern of a
> >> queueing system should be pretty sequential?
> >
> > It is, largely. SSDs really help Rabbit when you're doing a lot of syncs
> > - if you're using transactions or confirms then the fact that an SSD can
> > do an fsync many many times faster than spinning disks is a major
> > advantage.
> Oh! I'm using confirms. Why do they require many fsyncs? I thought
> confirms only *inform* me of fsyncs that would happen anyway?

Yes, but Rabbit will happily sit there for hours without issuing an
fsync if it feels like it. When it knows confirms are in use, it'll
schedule fsyncs either when it's idle, or on a timer, whichever is
sooner. Otherwise publishing clients could never receive a confirm that
a msg is safely on disk.

Matthew


More information about the rabbitmq-discuss mailing list