twitter / twemproxy

A fast, light-weight proxy for memcached and redis
Apache License 2.0
12.15k stars 2.06k forks source link

twemproxy支持blpop指令么? #670

Open wyl9527 opened 2 years ago

wyl9527 commented 2 years ago

文档显示twemrproxy不支持blpop指令,请问什么时候可以支持?谢谢

yuerugou54 commented 2 years ago

马晓栋已经收到您的来件,谢谢!

TysonAndre commented 2 years ago

https://github.com/twitter/twemproxy/issues/519

It's very likely the decision to leave it out was deliberate on the part of the original maintainers - it was documented that the command is not supported.

If twemproxy has 200 clients and a small number of redis servers, and one of them issues a BRPOP or BLPOP, then 199 other clients will see an unexpected pause of an unknown length (for commands forwarded to the same server), possibly even seconds, causing an unexpected delay and adversely impacting the overall host/application performance, in a reason that those 199 clients have no visibility into. ... As a workaround, it's already possible to call BLPOP/BRPOP in lua scripting (eval) if you're sure that your use case has timeouts properly configured or won't have adverse performance impact from blocking commands interfering with non-blocking commands.

This isn't currently planned.