All Routes Down

Last Updated January 2015

Something is preventing your app from responding to requests. This doc explains what the “All Routes Down” error means, what can be done to fix it, and what potentially caused it in the first place. After reading it, you should be familiar with:

  • What the “All Routes Down” error means
  • What can be done to fix it
  • The potential causes of the error

What Does this Error Mean?

This error means your web service is not responding to requests sent through the Pagoda Box router.

What Can Be Done?

If you’re a visitor to the site, there’s not much you can do. Corrective measures can only be taken by users with access to the app powering the site on Pagoda Box.

If you are the owner/administrator of the site with access to the app’s Pagoda Box dashboard, you should run through the troubleshooting process described in the Troubleshooting Services doc. This will help to identify the cause of the issue and resolve it as quickly as possible.

What Could Cause This?

While there are many things that could cause this error to appear, the following are the most common.

High Resource Usage

If a web service runs out of resources (RAM, CPU, Disk), it may prevent the service from responding to incoming requests. Resource usage is shown in your web service’s stats in your dashboard.

Maxed Out Connections

If your site is receiving a lot of traffic, it’s possible that so many requests are queued up waiting for a response that your web service is simply unable to respond. While this problem is usually accompanied by high resource usage, it is possible to max out connections without running out of resources. Connection errors will show up in your app’s logs.

The simplest solution is to add instances to your web service to increase its ability to handle concurrent requests.

If your app isn’t under high traffic, but you’re still seeing connection errors, it could mean that requests are queuing up waiting for something. Possibly a slow query in the database or something similar. In these cases, you may need to adjust your code or optimize queries to the database to allow the app to respond more quickly.

A Dead Service Process

Every web service is powered by an underlying process (PHP, Ruby, Node.js, etc.). If that process stops functioning or is killed, it will be unable to process incoming requests and provide a response. In most cases, a dead process is fairly easy to identify in your app’s historical logs. Something that could fix this fairly quickly is restarting, rebooting, or repairing your service. Each will attempt to restart the dead process.

Possible Global Issue

In some cases, there may be a widespread issue causing this error to appear on your app as well as others’. Details and updates regarding global issues are available on the Pagoda Box Status Page.

If you have any questions, suggestions, or corrections, let us know.