Have you considered using a single session, but separating out your
different user logins into separate child objects within that one session?
eg: in a typical session, you might have a session object with the
following keys:
session.firstname
session.lastname
session.email
session.cart
..., etc.
So, why not instead use:
session.user1.firstname
session.user1.lastname
session.user1.email
session.user1.cart
..., etc.
and
session.user2.firstname
session.user2.lastname
session.user2.email
session.user2.cart
..., etc.
If the user is logging in from the same computer, then they are the same
person, but using separate objects for each of their logins/profiles
like the above may solve the problem you have.
Kind regards,
Martyn