Does anybody have opinions about or data on how much load (however quantified, on hardware of your choosing) a single y-websocket server can support?
The performance bottleneck of y-websocket server is the amount of memory that is used by each Y.Doc instance (every Yjs document that is currently being edited is loaded to memory). A single document (a small note, depending on your application), will use about 100kb of memory. That means you should be able to open about 10k connections on a 100mb instance.
Depending on your type of application, your users might create larger documents and you might need more or less memory.
I have plans to rework y-websocket to not load the document to memory at all. Until then you need to plan to scale y-websocket horizontally.
Thanks @dmonad – good to know.