Is server sent event restricted to the number of connections?

import asyncio
import random

from sanic.response import html, stream
from sanic.blueprints import Blueprint


blueprint = Blueprint("blueprint")


@blueprint.websocket("/sock/real-price")
async def sock_price(request, ws):
    i = 1
    while True:
        await asyncio.sleep(random.random())
        s = "data: " + str(i) + "\r\n\r\n"
        await ws.send(s)
        i += 1


@blueprint.route("/sse/real-price")
async def stream_price(request):
    async def streaming_func(response):
        i = 1
        while True:
            await asyncio.sleep(random.random())
            s = "data: " + str(i) + "\r\n\r\n"
            await response.write(s.encode())
            i += 1

    return stream(streaming_func, content_type="text/event-stream")


def init_app(app) -> None:
    """
    Register Blueprints to App
    """
    app.blueprint(blueprint)

    # Base Route
    @app.route("/", methods=["GET"])
    def home(request):
        with open("app/templates/index.html", encoding="utf-8") as f:
            return html(f.read())

    @app.route("/sock")
    async def sock(request):
        with open("app/templates/socket.html", encoding="utf-8") as f:
            return html(f.read())

This is my code in router.py. And I’m trying to test sse and websocket.

When I’m using SSE, I’m restricted to only 6 index.html,
and after that, additional network connection to /sse/real-price is pending.
Existing 6 same pages work well, but additional page freeze because of the pending connection.

When I’m using websocket, it works regardless of the number of pages.

Is it natural or did I do something wrong? if it’s natural, websocket is better than sse in webpages with many users.

It’s chrome problem, see:

Thanks for the answer! It was chrome issue.