Click here to Skip to main content
15,885,757 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hi,

We have an issue with a few of our sites. They have grown in user size of the years and the sites can now get quite busy at certain times of the year/month. With more people using them, certain issues are coming to light in the esential design of the sites, and I was wondering how other people would cope with this specific situation.

Here it is:

We currently store all pertinent data relating to anything that the user is looking at on the web pages in session variables, which are stored in a SQL Database (DB). Let's say you are an employer with 5 employees. We will store the employer DB ID in the session along with the current employee DB ID. We also store other information.

On opening another tab and going to the same page for the same employer but different employee, the session DB ID for the employee will now not correspond with the first tab, and let's say you click the save button on tab 1, you could be overwriting tab 2's employee data (name etc. - whatever is on screen) with tab 1 employee data.

Hope that makes basic sense.

We have various ideas on how to overcome this, but I would be happy to hear any views people have on this.

Thanks,

Julian
Posted
Comments
ZurdoDev 9-Jan-15 17:00pm    
I have seen, back when IE added tabs, that after opening x number of tabs IE will then spawn a new process (you can watch it in Task Manager) and that new process will get a new session.
Sergey Alexandrovich Kryukov 9-Jan-15 17:17pm    
Wouldn't it be the same session anyway? Sites' behavior indicate that. For Mozilla, it's certainly the same session.
—SA
ZurdoDev 9-Jan-15 19:34pm    
It was a new session with IE. I had this problem before.

1 solution

It is very interesting situation, when from the very same browser multiple users can connect the system...
The main problem is that you data is bounded to the IIS session that will not be switched when you switch browser-tab...
We had the same problem when running kind of ATM machines (to pull information and not money) in public places inside the organization (schools)...
We had a solution for that...to develop a whole sub-system to handle sessions inside IIS session. We identified every login with a GUID (dynamically assigned) and used that GUID as a token, that travels back-and-forth between the server and the client...
With our new system we are using ASP.NET form login's ticket support to achieve the very same thing...
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900