Domanda

SignalR utilizes a message buffer (one per client) in order to buffer messages as they head out to a given client. By default that buffer size is limited to 1000 messages.

Is there a performance counter available to watch the count of messages in the message buffer (or total count, if per client can't be done at that level)?

We aren't using Redis or any scaleout mechanism. We are just using the default buffering functionality out of the box.

È stato utile?

Soluzione

There are no SignalR performance counters to keep track of the total number of messages in SignalR message buffers.

There is, however, a performance counter that tracks the total number of message buffers SignalR currently has in use. This performance counter is called "Message Bus Topics Current".

SignalR has one "Message Bus", but the Message Bus can have many "Topics", each of which can buffer up to 1000 messages.

It's true that a Topic gets created for each client, but that's not all. A Topic also gets created for each Hub, group and user name.

1000 * "Message Bus Topics Current" will give you an upper bound on the total count of messages currently stored in SignalR message buffers.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top