aboutsummaryrefslogtreecommitdiffstats
path: root/lib/diameter/src/base/diameter_watchdog.erl
diff options
context:
space:
mode:
authorAnders Svensson <[email protected]>2016-02-21 22:42:55 +0100
committerAnders Svensson <[email protected]>2016-03-13 07:10:11 +0100
commit472a080ccf2f725e2f5277fa5feb76aaf9ce2e67 (patch)
treec917b2170f5bbb3e344d4b180d391eccaf376df8 /lib/diameter/src/base/diameter_watchdog.erl
parent6d4001de141a00b3bf37b8f7b24c5bde2b4f4015 (diff)
downloadotp-472a080ccf2f725e2f5277fa5feb76aaf9ce2e67.tar.gz
otp-472a080ccf2f725e2f5277fa5feb76aaf9ce2e67.tar.bz2
otp-472a080ccf2f725e2f5277fa5feb76aaf9ce2e67.zip
Add diameter_tcp option throttle_cb
To let a callback module decide whether or to receive another message from the peer, so that backpressure can be applied when it's inappropriate. This is to let a callback protect against reading more than can be processed, which is otherwise possible since diameter_tcp otherwise always asks for more. A callback is made after each message, and can answer to continue reading or to ask again after a timeout. It's each message instead of each packet partly for simplicity, but also since this should be sufficiently fine-grained. Per packet would require some interaction with the fragment timer that flushes partial messages that haven't been completely received.
Diffstat (limited to 'lib/diameter/src/base/diameter_watchdog.erl')
0 files changed, 0 insertions, 0 deletions