Close

Copyright © RebelMouse 2019

Follow Us:

Our Obsessive Approach to Caching

Site updates appear in a flash with our cache process

When it comes to growing your site traffic and audience, we all tend to think of the same things: great content, beautiful design, fast load times, interactive experiences, etc. But one thing that often gets overlooked is the role of caching. A web cache is the temporary storage of web documents, like images, article pages, and multimedia assets, to reduce unnecessary repeat loading from a server. Any platform that doesn't focus on caching performance usually has poor uptime stats, which means that you're going to experience downtime issues.

RebelMouse obsesses over these things so that you don't have to, and that's why we're able to handle massive traffic spikes without any degradation in service. Just ask RebelMouse-powered PAPER Magazine, who recently had an article receive 20 million page views in one day (!) with no noticeable change in site performance.


The way we handle our cache process ensures that your editorial changes go live very quickly on your sites. It's just another step in our devotion to keeping our platform — and your sites — the very best in the world.

Here are three reasons why our cache approach works:

Content Delivery Network (CDN): A CDN is a group of servers spread out among many locations. We use cloud platform Fastly and caching engine Varnish to power our cache.

We have a five-minute cache time, and we're experimenting with increasing it to lifetime so that the cache never expires except when content has changed. Currently, we have an API integration with our CDN that clears the cache when a post is updated. We can also update our five-minute cache time to six-hours because we already have long TTLs for the sites we power. TTL, or Time to Live, is part of the authentication protocol that verifies a client's certificate with web servers. For caching assets, such as images or CSS, we use a one-year cache time.

Front-end Web Servers: We use Varnish servers installed on our front-end web servers that provide us with traffic-spike protection and improve our ability to serve responses to our CDN faster. For the most part, the configuration of our Varnish servers repeats what we have set up in Fastly.

Application: RebelMouse's application is tightly coupled with memcached, which is an open-source caching system designed for sites that have a lot of data. By having this paired with many of our own data structures that require heavy, CPU-bound processing, we can reduce both the cache population and prewarm time.

By keeping our caching rules so strong, we're able to maintain an incredibly stable and fast platform. It's one of the reasons we have so many amazing case studies. We're also able to avoid any penalties from social sites, like Facebook and Google, who will notice things like downtime and make your content less discoverable.

Related Articles:

Publishers No Longer Have to Submit Their Site to Google News

Google's Publisher Center creates new opportunities for audience growth

Just before the start of the next decade, Google announced an important change to its Google News offering with the launch of Google Publisher Center. The new interface merges Google News Producer and Google News Publisher into one to streamline the partnership process for publishers.

Overall, the change should make it easier for publishers to manage their Google News settings, including updating themes, directing URLs to section pages, and configuring user permissions. Read the full list of features here.

Keep reading... Show less

How to Find Work-Life Balance as a Remote Employee

Tips from our CEO on making the most of an office-free lifestyle

Working from home is becoming increasingly popular, with an estimated 66% of companies now allowing remote work and 16% operating completely office-free. RebelMouse is one of those fully remote companies, and over the years we've mastered how to stay close to each other despite being spread across more than a dozen countries. We believe working remotely is good for both our personal lives and our productivity. Read more about this here.

Still, working free from the shackles of an office environment doesn't mean every day is a dance party in your pajamas from 9 to 5. Working from home comes with its own set of challenges just like any other job.

Keep reading... Show less

Inside RebelMouse’s Quality Assurance Operations

How We've Perfected Stress-Free Publishing

At RebelMouse, we like to refer to our enterprise publishing platform as "lean tech." Most publishers have a natural inclination to start doubling down on teams of developers who try to build unique experiences to help stand out above the noise. But they should actually be doing the opposite: Lean tech is the preferred way to cut through content saturation. By allowing RebelMouse to obsess over your product, content producers, editors, managers, and everyone in between can focus on creating quality content and taking advantage of opportunities to leverage distributive publishing strategies that create real revenue growth.

One of the major reasons we're able to maintain a lean tech environment is thanks to our approach to quality assurance (QA). We make updates to our platform daily to ensure our clients always have access to the most robust, high-performing, and secure version of our platform. Behind the scenes, this means having a solid QA structure that's efficient, creates less bugs, and catches the ones that do pop up before they go live. It's a system of checks and balances that's hard and costly to replicate on a custom CMS. Here's a glimpse into how it works.

Our Tech Stack Toolbox

  • Cucumber
  • Java
  • Junit
  • Maven
  • Selenium WebDriver
  • TeamCity
  • Zalenium (Selenium Grid)

Our Checks and Balances Workflow

Automated Regression Testing Cycle

The Lifecycle of a Product Update

When an update is first made to RebelMouse, TeamCity immediately triggers the start of automated tests to review integrity.

TeamCity Build

TeamCity Agent

The tests run in parallel on TeamCity's Build Agent. Next, Zalenium creates docker containers with browsers that matches the count of parallel threads. An Allure report is then generated from the test results, which shows the state of the application after the update.

Allure Report Pass

If a test doesn't complete successfully, the testing framework receives a video with a failed test and attaches it to the Allure report.

Allure Report Issue

Based on the report analysis, a QA specialist will create a "bug" ticket in our product management software to address the issue if needed. Then, information about the bug is immediately sent to the project manager and we begin the process of correcting the problem.

The media powerhouses we power can publish with confidence knowing that any product issues that arise are met with a tried-and-true process to fix the problem with little-to-no disturbance to their workflow. If you have any questions about this process, please email support@rebelmouse.com.

Related Articles

Subscribe to Our Newsletter