reduce ping events (Fix #1685) (#1699)

Closes #1685
This commit is contained in:
Frank
2020-11-19 09:27:48 +08:00
committed by GitHub
parent 44a588869e
commit 1883c62cf5

View File

@@ -54,12 +54,11 @@ class EventManager(object):
q = defaultdict(Queue)
self.clients[id(q)] = q
try:
# Immediately yield a ping event to force Response headers to be set
# or else some reverse proxies will incorrectly buffer SSE
yield ServerSentEvent(data="", type="ping")
while True:
try:
# Immediately yield a ping event to force Response headers to be set
# or else some reverse proxies will incorrectly buffer SSE
yield ServerSentEvent(data="", type="ping")
with Timeout(5):
message = q[channel].get()
yield ServerSentEvent(**message)
@@ -106,12 +105,11 @@ class RedisEventManager(EventManager):
q = defaultdict(Queue)
self.clients[id(q)] = q
try:
# Immediately yield a ping event to force Response headers to be set
# or else some reverse proxies will incorrectly buffer SSE
yield ServerSentEvent(data="", type="ping")
while True:
try:
# Immediately yield a ping event to force Response headers to be set
# or else some reverse proxies will incorrectly buffer SSE
yield ServerSentEvent(data="", type="ping")
with Timeout(5):
message = q[channel].get()
yield ServerSentEvent(**message)