You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There's an app.dataChan channel – sent to by Consume() – which has a buffer of 200 items that is not configurable (const appDataChanSize = 200). In a service that receives up to a million RPM we see waits in Consume() accounting for ~50% of global blocking time.
In our case, we see these requests in bursts so just being able to increase the buffer size (at the cost of more static allocation) would help us reduce the amount of backed up goroutines (and thus reduce memory pressure from the stacks).
Alternatively, being able to turn on a behavior that does not wait for writes to become available could be useful. For example, auto-Ignore()-ing the transactions.
The text was updated successfully, but these errors were encountered:
There's an
app.dataChan
channel – sent to byConsume()
– which has a buffer of 200 items that is not configurable (const appDataChanSize = 200
). In a service that receives up to a million RPM we see waits inConsume()
accounting for ~50% of global blocking time.In our case, we see these requests in bursts so just being able to increase the buffer size (at the cost of more static allocation) would help us reduce the amount of backed up goroutines (and thus reduce memory pressure from the stacks).
Alternatively, being able to turn on a behavior that does not wait for writes to become available could be useful. For example, auto-
Ignore()
-ing the transactions.The text was updated successfully, but these errors were encountered: