I've only read page 1 of this topic so if this has already been mentioned forgive me? :)
I think the real strengths of the social networks are you can customize your information experience with the personal newsfeed (Twitter, or your Facebook default page). Only people, pages, news that you've selected appear but you still have the freedom to browse around anywhere if you'd like.
True, it wouldn't be 100% accurate, but would it be mostly accurate?
Example (per TZ), if you expire the cache results every 5 minutes then it would never be more than 5 minutes difference? If I hadn't logged in for 24 hours and 3 minutes, then I would still show up but drop off in 2 to 5 minutes on the next run. Alternately, if I had just logged in for the first time in 24 hours, I wouldn't show up immediately but in less than 5 minutes I would be there.
For someone who really wants to use this, these results could be good enough as a trade off for slightly less than 100% accuracy (99.6% accuracy?).
Btw, my previous comment about a simple cache wasn't meant to mean it would be a simple modification to the code. Sorry about that. I meant simple to describe the type of cache, like maybe a flat file in the caches folder. These comments are only meant to brainstorm ideas, if you were open to it. I'm not trying to suggest you should do anything you don't want to do. :)
I haven't seen the code. It was just an idea. Instead of doing the query every time, check if the results are still fresh and return the results of the previously cached query instead of performing the expensive query again.
This could be a possibility, CCS_GATEWAY_CALLED http://community.inv...y-init-failing/
These articles might prove useful as well:
Notably Log a User In and Out, I saw this:
IP.Board 3.2 Changes
for this code to work with IP.Board 3.2 you will need to replace all instances of
$_REQUEST['username'] with $_REQUEST['ips_username']
$_REQUEST['password'] with $_REQUEST['ips_password']