Facebook employs client-side ranking for improved efficiency

Facebook employs client-side ranking for improved efficiency
Ryan is a senior editor at TechForge Media with over a decade of experience covering the latest technology and interviewing leading industry figures. He can often be sighted at tech conferences with a strong coffee in one hand and a laptop in the other. If it's geeky, he’s probably into it. Find him on Twitter: @Gadget_Ry

(Image Credit: iStockPhoto/HStocks)

Facebook's core business surrounds the News Feed and the content it delivers to users, so the social giant is making it more efficient through employing client-side ranking. 

When it comes to seeing content – you want it fast – and so do your users if they're going to stick around. You may not have control of their internet speeds, but that doesn't prevent you from taking measures which ensure your users have content readily available to stop them from staring at loading screens. 

Facebook has taken several measures recently to speed up the experience for their users such as 'Instant Articles', a publishing format the company says can load up to 10x faster than standard, and the debut of 'Lite' apps which require less data but provide a simpler experience for users in emerging markets. 

The most recent trick prioritises content in the news feed through a technique known as 'client-side ranking' to ensure the content which is pre-cached is at the beginning of your feed ready to go and subsequent items begin loading in the background. 

"We redesigned the architecture of News Feed to allow stories to be re-ranked on the client after being sent from the server. We avoid spinners and grey boxes by 1) requiring stories to have all necessary media available before rendering them in News Feed and 2) being able to optimise the content in News Feed for each session," wrote Facebook in a blog post

The subsequent content is prioritised based on what you're most likely to find most interesting. Facebook says that each time you scroll past a post then it will recalculate your News Feed to know what to load from both new stories on the server end and unseen ones from your cache. 

All of the calculations are performed on the client-side (the user's device) to reduce how much data is sent to Facebook's servers. Facebook says its ideology on the matter is that a fast network should be considered an enhancement rather than a requirement. 

"This architecture also enables us to surface stories that have been optimised for your connection at the time of your session. For example, slow-loading content gets temporarily down-ranked while it loads because, before we show a story in your News Feed, we check to see whether the media in the story — the image, the video, the link preview, etc. — has been loaded on your device. If it hasn't, we re-rank the stories on the client and prioritise those that have fully-loaded media." 

Facebook's latest update is sure to be welcome by its users and it could be worth considering if a similar architecture could benefit your own. 

What are your thoughts on improving efficiency through client-side ranking? Let us know in the comments.

View Comments
Leave a comment

Leave a Reply

Your email address will not be published.