Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Connection scaling #135

Open
gempir opened this issue Jun 4, 2020 · 3 comments
Open

Connection scaling #135

gempir opened this issue Jun 4, 2020 · 3 comments

Comments

@gempir
Copy link
Owner

gempir commented Jun 4, 2020

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.

@gempir gempir changed the title RFC: Connection scaling Connection scaling Jun 12, 2020
@gempir
Copy link
Owner Author

gempir commented Oct 4, 2020

First draft #144

Not ready to be tested or used at all though. Lot's of tests failing

@Satont
Copy link

Satont commented Oct 1, 2023

Is there update on this?

@gempir
Copy link
Owner Author

gempir commented Oct 1, 2023

No not really, never had enough motivation to implement it to the standard that I want

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants