Stale forum data when not logged in

The forum is showing stale data if a user is not logged in. Is this intended behavior or is there a cache misconfiguration somewhere?

Screenshots taken with 10 seconds between them.

Logged out:

Logged in:

Look at the first row/topic.

I can confirm this behaviour

I think, this is caused by some performance tools and caching mechanisms, we installed.
We’re constantly looking into reducing the server load, maybe @erlend_sh knows more about this one.

@destroflyer, an unrelated question. Do you know if there is any JSON api to access the forum, either public or private? I’m building a jME forum widget to ease the viewing of the forum… Atm my backend just parses the latest topic page into JSON for my frontend. (Yes, I do cache the response from jME so I’m not hitting your server on every request).

You should also try to bundle all your assets together (javascript and CSS). A request for this page spawns 130+ requests, which most of them hits your server… although I do not know if that is possible due to that wordpress thingy…

Another way is to put an nginx instance as a reverse proxy in front of apache and let it handle all the static assets, it is lighter and faster at serving static files (especially if apache is running mod_php) which I assume it is since it is the standard setup…

Re. stale topics: yep, that would be due to our caching. This currently reduces site’s load time for anonymous users by a very significant amount, so we’d rather keep it on unless a breaking issue emerges.

Re. JSON api: you can get a much better answer to that question on bbpress.org. What kind of widget are you making exactly? Is it intended for the browser or for mobile apps? And, what are the problem areas of the forum that you are trying to address? Maybe you could help us do some tweaks for everyone’s benefit.

Re. bundling: I’ve tried various minification plugins, but they tend to always conflict with something. We might be able to do it properly with a more configurable plugin like Minqueue. If you could help me set that up, PM me.

Re. nginx: Yeh, @sbook has been looking into many options such as this one. He could tell you where we’re at with that.

A quick search tells me that you’d probably want to look into either of these plugins:
http://wordpress.org/extend/plugins/wp-api/ (which has been forked and updated on GitHub: GitHub - jbuchbinder/wp-api: Fork of WP API plugin, and he was very responsive to my simple query. If you use his plugin you’ll have someone to help you along)
http://wordpress.org/extend/plugins/json-api/

If they support custom post types, they might be able to support bbPress practically out of the box. If not, then it might still not be that much of a stretch to modify the code to make it support bbPress. If you can get this to work in your own WordPress/bbPress test environment (easy to set up locally) it should work on our site as well, but I can give you access to our test site if you’d like.

@erlend_sh, yeah I guess it does keep the load off… how long timeout on that cache? It feels like it is a bit to long =/ (especially it breaks my forum scraper… but that I can solve =P)

About the JSON thingy, thanks for pointing me in the right direction. The widget is just a small project at the moment and is currently just an excuse for me to play with some new frameworks/libs. One problem I’d like to solve is to be able to more easily follow threads I find interesting, without filling my inbox with mails. I would also like to be able to follow certain users. Be notified by “hot topics” etc. Basically I want be notified (when I want) about things I care about without having to poll the forum manually.

By tracking which topics a user finds interesting and which users participating in those threads I want to train a classifier which can rank topics and so on… (if I get that far).

The plan is to tell the backend which topics I wanna follow then it should push those updates into slick web 4.0 (yeah, I’m that cool) frontend.

jME-server js/html5 client

If anything good is coming from all this I certainly gonna share it with you all =)

About wordpress/bbpress: I’ve been working as a PHP dev in 7 years (and with web longer than that), but I’ve only installed and played with Wordpress once (and that was some time ago). I doubt I’m that helpful with the plugin.
I’m gonna fire up a vm with a LAMP-stack and see what I can do =)

@kwando
If you want, I could create a little JSON backend, that supports things like latest-topics etc. :slight_smile:
Wouldn’t be a huge effort, since I have the database connection right here - I did something similar with a little search engine for a game called TrackMania 1 or 2 years ago:
http://destroflyer.mania-community.de/maniasearch/api.php?mode=getSearchResults&q=tetris
(It was based on XML and very simple, but I think you see the art of communication - I would just output the latest posts or whatever requested in JSON format, which you (and other monkeys :D) could parse and display on your site)

@destroflyer, It would be awesome but maybe you should run it by the other monkeymasters before doing anything =)

Do you have any experience with the plugins erlend mentioned above?

No, otherwise I wouldn’t offer to create one^^

@destroflyer hehe, true that =) I would be happy to use a small JSON API instead of parsing html, which is more likely to break when something gets updated =)