One of the main reasons this was done is, because we have quite a heavy load in prod on realtime (~70million in 5days) and sometimes we do get several timeouts as below and we are trying to address this issue
The issue seems the streams are actually timing out, it could be our fault because they are not oneway, since from a stream we emit realtime (which internally is another stream). On a side note we tried to enable the FireAndForget on SMS for the orleans signal provider and streams immediately doesn't work correctly, not sure what the problem is tho
Performance
Send for ConnectionGrain
Task array pooling
InvocationMessage change to always immutable
Features
SendAll reusable (for exclude/send)
Add shorthand .SendOneWay
BREAKING CHANGES
SendInvocationMessage (param) is now Immutable<InvocationMessage> - most probably it should be low impact as externally its most likely to use other overload instead Send(this IHubMessageInvoker grain, string methodName, params object[] args)
One of the main reasons this was done is, because we have quite a heavy load in prod on realtime (~70million in 5days) and sometimes we do get several timeouts as below and we are trying to address this issue
The issue seems the streams are actually timing out, it could be our fault because they are not oneway, since from a stream we emit realtime (which internally is another stream). On a side note we tried to enable the
FireAndForget
on SMS for the orleans signal provider and streams immediately doesn't work correctly, not sure what the problem is thoPerformance
Send for
ConnectionGrain
InvocationMessage
change to always immutableFeatures
SendAll
reusable (for exclude/send).SendOneWay
BREAKING CHANGES
Send
InvocationMessage
(param) is nowImmutable<InvocationMessage>
- most probably it should be low impact as externally its most likely to use other overload insteadSend(this IHubMessageInvoker grain, string methodName, params object[] args)