HNHacker News
TopNewBestAskShowJobs

maybenot

10 karma · joined April 5, 2013

submissionscomments
maybenot··on A quick message queue benchmark: ActiveMQ, RabbitMQ, HornetQ, QPID, Apollo
AMQ is sensitive to proper memory configuration. Typically what will happen is the memory configuration in the activemq.xml doesn't line up with the JVM heap and this causes garbage collection thrashing. It reaches a point where the CPU spikes and the monitor process zaps the JVM process, which causes a restart.

If everything is tuned and lined up properly this won't happen. I've used AMQ in high-volume production systems for years without this problem.

maybenot··on A quick message queue benchmark: ActiveMQ, RabbitMQ, HornetQ, QPID, Apollo
This is a test of the default configurations of various brokers, NOT the brokers themselves.

Apart from declaring the testing queues in some brokers’ configuration and the persistence settings, all brokers were running with their default configuration out of the box (no tuning made).

He also casually mentions that ZeroMQ is using an in-memory configuration.

A home-made ZeroMQ 2.2.0 broker, working in memory only (no persistence).

The default configuration of AMQ persists messages to journal on disk. So apples to oranges?

Why do people keep writing "benchmark" blog posts like this?

maybenot··on Web Framework Benchmarks Round 2
The Play JSON controller is using Futures to do JSON serialization.

https://github.com/TechEmpower/FrameworkBenchmarks/blob/mast...

Compare this to the Java Servlet, which just serializes directly in the Servlet callback.

https://github.com/TechEmpower/FrameworkBenchmarks/blob/mast...

The former seems like overkill.