Limit of concurrent connections in Free Plan?

What is the name of the domain?

bizarre.kiev.ua

What is the issue you’re encountering

Is there any limits of concurrent connections count in Free Plan? Site (an old-style web-chat) has one cgi for streaming text chat messages, traffic is very low but work time of this cgi can be hours and simultaneous connections (one per client) can be hundreds. There was no problem by now (500+ connections), but last time I see some limiting up to 300 or so, not a webserver-side problem for sure, it can serve 10x++ of such load.

What steps have you taken to resolve the issue?

Checked DDoS logs and found no records related to this limiting

I am unaware, however I do have websites with a lot of traffic. I’d say it’s not a case. Should hold 10k/minute even on free.

Are we talking about HTTP or WebSockets here? :thinking:

So far I could share below article, however might not provide direct answer to your question.

No, it’s not using websockets, it’s 20 years old. I’ve searched about connection limits and got and read this article, thank you.
No changes at server side last year, all works fine until yesterday.
Maybe problem not in connection number limits but in some streaming transfer by CF?
Is there are some changes in Cloudflare logic and now it tries to buffer server responce then pass it to client?
From logs I see some clients are able to chat, but most (including me) are not.
If I bypassing Cloudflare all works ok.

Just found another thread here: Text/plain response chunking (streaming) does not work anymore because of the zstd
Disable Zstd Content-Encoding in Chrome and now it’s working fine for me.
By now I don’t found is it possible to disable zstd in Cloudflare?

If you have control over the origin server responsible for streaming messages, I suggest setting the “Content-Type” header to either “text/event-stream” (if you’re using Server-Sent Events) or “application/octet-stream” if it’s just a chunked (framed) response to discourage Cloudflare from trying to compress response using newly added zlib which does not seem to be working properly with chunked/framed data streams.

1 Like

Alternatively you could also switch to the enterprise plan which will allow you to opt out of the ZSTD compression :moyai:

It don’t use SSE, because it’s too old (20+ years), it outputs just plain html document with javascript inside (but works pretty like SSE - periodically updates while streaming like <script>parent.update("newtext");</script>).
If I change content-type I think browser wouldn’t parse output as html/javascript.
Maybe I need to rewrite code to use SSE instead, if there are no other ways.
Temporarily worked around by refreshing instead streaming and server load and network traffic increases by several times.

Recently understanding the wrong assumption about connections count limit opened new thread and received the answer: Zstd prevents text/html streaming output (Free Plan)

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.