Bot makers: what is more stable? One IRC client per user of the bot or one big IRC client?

The large bots spread channels over multiple connections. It’s not one channel per connection, it’s more along the lines of 20-50 channels per connection.

A single channel per connection is not viable for huge bots. Each outgoing connection takes up a port and it’s a huge waste of resources, since the vast majority of the channels will be dead silent as well.

Everything on a single connection is bad, because if the connection drops, you need to join all those thousands, even tens of thousands of channels again, and that will take hours, possibly over a day.

So what you’re left with is a hybrid. You don’t spend a huge amount of resources and, if a connection drops, you’re not spending an eternity getting back up again. The downside? The code gets complicated.