After SQL server restart you might get the error in your ASP.NET application: "A transport-level error has occurred when sending the request to the server. (provider: Shared Memory Provider, error: 0 - No process is on the other end of the pipe.) "
The reason is hiding in SQL Server Connection Pooling http://msdn.microsoft.com/en-us/library/8xx3tyca.aspx
You can do a simple test by adding ;Pooling=false to your connection string to Sitecore databases and now your application will not crash whenever SQL restarts.
Impact Connection Pooling on performance for a stand-alone Sitecore installation - is what I will try now to investigate.