Originally posted by Vicky Pandya:
Jason: Disadvantages of using session.
1)Session objects are stored in memory and consume significant resources.
2)Session tracking relies on cookies. Some users turn off cookies for various reasons, especially for security reasons.
3)Session tracking uses session identifiers that are created by the server. 4)In situations where many Web servers and many JVMs are used, the session tracking simply does not work because servers do not always understand each other's session identifiers
I think you may be a bit too concerned with sessions taking up too much room in memory. Too many times someone reads an article that gives them the idea that sessions are evil and that is far from the truth. There are very few applications that would have better performance without sessions.
If it is an internal app, the number of users should not be all that many and so the session space is minimal. Also, an internal app can require cookies.
If it is an external app, much can still be done to manage session data properly without throwing the concept of sessions completely out the window. Also, URL rewriting can easily take the place of cookies to maintain session support.
Some data will have to be stored somewhere. If it is not in session, you will need to propagate it from page to page, which uses more bandwidth because that data has to be sent client-server/server-client with every request.
You should try to find the right balance between bandwidth and memory to have optimal performance and maintainability.