go-twitch-irc
go-twitch-irc copied to clipboard
Connection scaling
Currently go-twitch-irc uses 1 connection to read mesasges from TMI and write message to TMI.
It is rarely recommended to go above 100 channels on a single connection. This brings up the question if we should support connection scaling in go-twitch-irc directly which would mean we open more connections depending on how many chats we have joined.
I think we have discussed this once before and back then we decided this would be better to handle on application level instead of in this library. I'd like to rethink this because this could be a very cool feature and can be reused easily for a lot of projects.
At first I would only implement a very stupid scaling that would open a new connection each 50 channels and keeps them seperate. Maybe later we could have backup connections and seperate write connections.
From the client side nothing would change. The interface will be excatly the same and nobody has to adjust anything. Connections will automatically scale after 50 channels.
First draft https://github.com/gempir/go-twitch-irc/pull/144
Not ready to be tested or used at all though. Lot's of tests failing
Is there update on this?
No not really, never had enough motivation to implement it to the standard that I want