Thanks for the update, Mark. I've been tracking this issue to know what you guys might discover on these particular pages of EasySocial. I'm guessing they are the most visited pages and can thus effect user experience.
I set up a test site I'm building with EasySocial for this summer and I'm starting with a super clean install stripped down to a couple users, no content, on a no-framework template from Joostrap (w/ the fitting name of "Cleanliness") and uninstalling every stock component and plugin I don't need. However, for the time being, I'm on Siteground shared hosting so it doesn't have APC or nginx, only Varnish. I may upgrade later to Cloud hosting with these modules. My benchmark load times with this install are pretty dang good, even on dashboard and profile pages but, I imagine, as content and my users tables are added it will begin to slow down a bit so I will keep monitoring as I add to EasySocial and Joomla to see what creates the biggest hit.
With this setup, dashboard and profile and group pages are only about 200-400ms behind other pages. My concern is primarily with the waiting time portion of page load time, or the time it takes for the server to respond in sending data -- not so much the onload time. To me, wait time on the server is the most important metric for user experience because even if it takes a few more 100ms to load everything on the page, the user has visual confirmation that the page is loaded by appearing data and can begin to process what they are ready to view. The hit on UX is when there is nothing is happening on screen. That is when the user begins to become impatient and won't spend as much time on the site. I believe that right around 500ms to data population from server is the minimum competitive standard. My stripped down set up achieves that on all pages except dashboard, profile and group pages but they are not far behind, about 200-400ms, sometimes only 100ms. I'll keep tabs as stress is added, however. And again, I'm only on shared hosting right now.
Mark wrote:Also, we did thought about rendering the stream via AJAX so that your initial page load would gain about 700 - 800ms. What are your thoughts on this? We could make this optional so that you get to choose if you want it rendered via AJAX (ala Facebook style) or want an instant result on the stream. When rendering over AJAX, the difference is that the stream does not appear immediately.
I would be interested to try the stream with AJAX loading because that would cut down on server response time. An option to use AJAX for the stream would be a good idea to start and get the feel for what we like better.
I want to add that StackIdeas team is offering a great product and service and are way ahead of the curve in the CMS world with EasySocial. The amount of features/options and aesthetics in this product coupled now with the drive to see it's performance at the same level is impressive. I'm confident the team will resolve all issues in regards to performance.