"Database Message Bus" vs. "Socket Message Bus"

Hi all,

What is the difference between these two message busses?

I am guessing that with "Database Message Bus" the messages are added to a DB table, and consumers read that table.  And that "Socket Message Bus" is a live service that transmits messages on a specified port, and listeners are able to receive messages.

And as a developer my gut is telling me that the Socket message bus is less stable and services that go offline will miss messages, while the DB bus is more stable (allowing missed messages to be read when a service comes back online), but is a little slower since consumers probably need to use polling to fetch new messages.

Is there more to it than that?

Thanks.