Hi all, We are experimenting with publish-subscriber for market data using M3 java broker and M2.1 java client, but running into memory consumption issue with the broker.
A setup with constant simulated feed appeared to run smoothly for up to a few hours (very few objects were promoted to old generation), then memory would suddenly start to accumulate within a short period of time. These objects eventually were moved to old generation, but CMS collector was not able to collect them as garbage. Hence, heap size ran close to limit and caused GC to pause the broker process too often and performance to worsen until it became unusable. With broker running close to heap limit, jconsole showed none of the queues has any message built up. So we were wondering what could be referencing these uncollectable objects in memory. Profiling the broker is the next item on our checklist. Has anyone experience similar issue with the java broker? Test configuration: Broker heap size 2,4,8 gb (all exhibit the same behaviour) All queues are dynamically created by client / server, non-persistent message. Subscriber setting: AMQTopic autoDelete = true, durable = false 1 producer at 50 msg/s with 35 consumers, message size < 1k. Total message rate at broker is around 2000 msg/s. Regards, Keith
