How to reduce management traffic between a SwiftMQ Router network and SwiftMQ Explorer?

Andreas Mueller

There are 2 main changes in the management tree: Entity adds/removals and attribute changes (e.g. Network Swiftlet throughput attributes). All changes are held in the Management Swiftlet and flushed to the Explorer instance in the flush interval. When multiple attribute changes occur within a flush interval, only the last change is send. So this is what can be reduced with a greater flush interval. Entity adds/removals changes can't be reduced.

There is a smart tree attribute in the router's environment entity. If that is true (default), the amount of management messages are greatly reduced. If it is set to false (= no smart tree), JMS and Queue Manager Swiftlet will have a deeper Usage section and you will have more traffic but you will have much more information. Switching the smart tree off is therefore only recommended during tests.

If you have many routers in a network, the Explorer loads all management trees from them during connect and will receive all changes. This can bring your Explorer into the knees. You can avoid this behavior by enabling authentication for the Management Swiftlet of each router and specifying a password. In that case the Explorer displays a "locked" router symbol and acquires the management tree only after you've performed authentication with that router's management Swiftlet. Thereafter you will receive updates from that instance. This is the best way to reduce management traffic in a large router network (> 10 routers). Look here (Protecting Access).

All this only applies when a Explorer instance is connected. If there is no Explorer instance connected, you will have no overhead at all.