These days have been a kind of nightmare in our company since our 2000 sqlserver has colapsed and all processes running switched from runnable to sleeping processes and remain sleeping.
The ongoing solution is to kill all proceses, restart the server, so the instance and start over again, but i dont think this is the smartest idea to find out the problem "From the root".
i dont know if it is an internal process, a Datbase corcern, otr the server resources itself.
Sleeping just means not currently running a query. It means the connection is open, but there are no pending requests. Runnable is not a state for a SQL connection. Sleeping = waiting for something to do Running = currently executing a query Suspended = waiting for a resource (lock, latch, etc)
Typically lots of sleeping connections indicates an app that's either using a connected architecture (open connection and never close it), or one that's careless about closing connections once done.