We're running a PaaS ASP.NET application in an Azure App Service with 3 instances and managing session data outproc in a SQL Server database.
The application is live and we've noticed a large amount of session data for some users when following certain paths e.g. some users have session data upwards of 500k (for a simply site visit with no login the average session is around the 750 - 3000 mark which is what I'd expect).
500k sounds excessive but was wondering what is normal in large enterprise applications these days and the cons of holding so much data in session.
My initial thoughts would be,
- No affect on Web App CPU (possible decrease in fact) because not constantly doing queries,
- No affect on Web App Memory because we running outproc,
- Large spikes in DTU on Sql Server session database when garbage collection runs,
- Application may be a bit slower because it takes longer to read and write session data between requests,
- May not be ideal for users with poor internet connections,
- Possible increase in memory leaks if objects aren't scoped correctly.
Does my reasoning make sense or have I missed something?
Any thoughts and advice would be appreciated,
Many thanks.