Skip to content

SSE problem, number of entities - connection_closed #1473

@michalcharvat

Description

@michalcharvat

Goedemorgen.

At first, I thought the problem was on macOS because users were getting these responses. It worked fine on a second user account, but I suspected there was a deeper issue.

After debugging, I found that I was hitting the GO server limits (again), specifically the URL length limit.

Most users probably won’t reach this limit, although it depends. There are actually two possible issues here: URL length and buffer size.

The URL length limit is reached sooner because it depends on the length of entity names. Each NamespaceModuleEntityName makes the SSE URL longer. With 303 entities (requested of 443 registered), I hit this limit today. In this case I would say bad application design because the changing limits on the webserver will just postpone the resolution of the problem.

Solution could be "perhaps" simple - register the entities via POST and then you will just listen for changes. You can also split the response so you would avoid the buffer size limits.

Another option could be that we disable SSE and use different changes handler. I have finally rewritten RTM module which uses pusher channels protocol. You dont need to wait for response, it will come immediately.

Anyway with increasing number of entities I also see the problem in the links. Even the Link/query are going in the single batch request, I assume they are not grouped, so for a single entity there could be easily over 40 db queries.

Another milestone in development has been reached; I'm looking forward to what comes next :-D

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions