-
You would have to unfollow a hell of a lot of old things for that to make sense.
After marking things as "New" the next biggest slowdown is on permissions and ignored stuff.
If you happen to ignore a shedload of stuff, then that could slow things as we have to get all the things only to then exclude a lot of things. Ignoring people is more costly on the query than ignoring posts.
Then there are items in forums, and really it's not the age that matters here... it's the number of distinct forums the things are in and the sheer quantity of them.
How many pages of stuff on your following page do you have?
For reference, I have 266 pages. Which is a fair load of stuff, and yet I see in Google Chrome's network debugger that it only takes 0.9s to generate a following page (I recently marked everything read, I am not ignoring anything at the moment).
Occasionally mark everything read (link is bottom right on the home page).
The following page is a beast to calculate and does take a moment to perform the query, almost 1 second or so.
However if you mark everything read, it can do the same query in half the time.
The key is understanding how we store and calculate this stuff... if you mark everything read we store a single value, then over time we store a value for every thing that you visit and also track the time of all things that you are following that have had updates. We end up havin to crunch tens of thousands of pieces of information, just to be able to show the word "New" next to things.
If you mark everything as read occasionally you greatly reduce the number of things we're crunching when we make that page.
Marking everything as read only marks forums and their content as read... not private messages. So if you've caught up on reading... mark everything read.