I’m Piotr, a member of Wikia’s Engineering team focusing on site performance. "Site performance" in basic terms means how fast the site loads. Performance is determined by many factors: site features, ads, the order these load, and your local internet connection and settings. Here at Wikia we know performance is important, since a fast site means a happy user. We have a dedicated team that focuses on performance, of which I am a member.
We undertook many initiatives in 2012 to improve our site performance, and I'm excited to tell you about some of them. I will also be periodically offering updates here as well as advice on how you can locally improve your personal and wiki performance.
The Proof is in the Pudding
Let’s start with some data for those who like numbers. The most important number in performance is "page weight", or the the number of bytes downloaded per page view. This is, in essence, how fast the page will load after you navigate to it. We are happy to report that in 2012 we reduced page weight overall by 48%. Additionally average page load time for our logged in users improved by 52%!
This chart represents how much time our servers take to generate a page. 100% is our baseline taken in the middle of the year. Values lower than 100% are an improvement. Overall change was 31% reduction in average time it takes to generate a page.
We know you come to wikis to not only read, but to edit! The editor is a complex tool and can be tricky to improve, but we are happy to report that we were able to reduce the editor load time by 46%. We hope that you are as happy about those results as we are!
Videos & Images
A wiki is made up of not only text, but images and videos as well. These rich media items generally take longer to load, but we want you to use as many videos and images as you want, so we have taken a number of steps specifically focused on videos and images. Videos no longer initialize on page load and are only loaded when a user takes action on the static image representing the video. You now can embed several videos in the same article, and will not see a drop in performance.
When we looked at improving page load time, we found we could tweak the order of image loading to cut down on the number of resources downloaded. Instead of loading all images in an article at once, we now intelligently only load those images visible on screen.
This chart represents the average number of assets downloaded with every page load. 100% is our baseline taken in the middle of the year. Values lower than 100% are an improvement. We reduced number of assets downloaded by 45%.
Some old technology was removed and some was rewritten which helps to keep our page download size small and also improves rendering time.
Parts of our interface are used more often than others. To help improve overall performance those less frequently used features are now loaded on demand. Examples include global navigation and share functionality.
All of this being said there is only so much we can do for improving core MediaWiki in terms of its speed. There are articles that take a long time to generate due to the way they are constructed - for example when using slow DPL queries. Moving forward we have many more plans, but we want your help!
We want to know what we can do to help you find and optimize articles that are not performing well. Would a list of articles with the length of time it took to generate them help you? Or would you be interested in other information? What are the ways we could work together to make Wikia faster for everyone? Please leave your feedback, questions or requests in the comments below.
Want to receive updates on the latest Staff blog posts? Then click here to follow this blog.