Skip to content

FAQ

I forgot my token, what to do?

If you have lost your token, you can have it sent in an email by using the below API call. Remember to replace test_user and test@shimmercat.com with your details:

curl -X POST https://accelerator.shimmercat.com/presentation-api/v1/tokens/start-recovery/ -H 'Content-type: application/json' -d '{"username": "test_user", "email": "test@shimmercat.com"}'

For security reasons we don't send the token directly, instead the email includes a link to obtain the token. You can also contact us at ops@shimmercat.com and provide your username, and we will help you!

Error “gcc: error: x86_64-linux-gnu-gcc: No such file or directory”

This error occurs because of missing dependencies. To install common dependencies, you can execute:

$ sudo apt-get install build-essential autoconf libtool pkg-config python-opengl python-pyrex python-pyside.qtopengl idle-python2.7 qt4-dev-tools qt4-designer libqtgui4 libqtcore4 libqt4-xml libqt4-test libqt4-script libqt4-network libqt4-dbus python-qt4 python-qt4-gl libgle3 python-dev

For more detials you can also check here.

What about SSL Certificates?

ShimmerCat Accelerator does TLS termination and needs access to a SSL certificate for the served site. ShimmerCat Accelerator combines the TLS and HTTP/2 fingerprints of the peer to do small adjustments specific to the visitor's browser, and to help separate human and bot activity.

How does ShimmerCat Accelerator work with cookies?

With HTTP/2 Push, the server can do a good guess of what the client needs already from the first request, and send it to the browser. However, for a user that visits a site not­ for ­the ­first time, the server need to know what contents the browser keeps in cache from previous visits. To do this, the standard is for the browser to communicate an overview of the contents of its cache explicitly. The mechanism is called "cache digests", and it complements HTTP/2 Push.

What compression format does ShimmerCat Accelerator use?

ShimmerCat Accelerator uses Brotli by default for compression of static assets, which compared to gzip is well worth the substantial file size savings.

How to update files?

ShimmerCat Accelerator access files in the same way than your traditional web server, so get to update things in the same way you have been doing it so far.

How does ShimmerCat Accelerator work with locally cached content?

The data we collect allows us to build rules tailored for browser and device, and of course local cache contents, whenever that is possible. More concretely, we can know if a user is a first-time visitor, and estimate the amount of unused bandwidth by looking to its network latency and bandwidth, which ShimmerCat Accelerator can estimate using timings from the handshake process and HTTP/2 Ping frames. That allows us to create a very specific set of resources to push to first time visitors. For not-first-time visitors, we use cache digests via an, opt-in, automatically injected service worker, so that we know which assets are already in the browser’s cache. Some browsers do not implement service workers yet, so our solution is less effective in those cases. However, even browsers that do not implement service workers yet benefit from optimizations for first time visitors and automatic image prioritization.

Why do I get 503 errors in long requests, particularly POSTs?

Sometimes a 503 appears when a request takes too long. The most frequent cause is timeout issues. Timeouts can happen in two places:

  • ShimmerCat
  • HAproxy

For ShimmerCat, timeouts are currently configured globally for each consultant, the default is 60 seconds and can be changed as explained here. Note that ShimmerCat timeouts are activity-based: as long as a connection is trafficking some data, it won't be closed. Only connections which are inactive for more than a set time are interrupted.

HAproxy has its own very flexible configuration; in the template we distribute there is often a short timeout set for backend connections; if you see a 503, you may want to change this setting.