Prisma1: Document development cluster limits

Created on 9 Feb 2018  路  9Comments  路  Source: prisma/prisma1

Public development cluster come with certain limits. This should either be added to our documentation or homepage.

One example is the rate limiting mechanism:

  • we allow 10 requests per 10 seconds on average
  • if this rate is exceeded, we start queueing requests in memory. If this queue exceeds 25 requests, we directly return an error.
  • we return the HTTP header throttled-by, which indicates how long the request was delayed due to throttling in milli seconds.
aredocs

Most helpful comment

Yeah just from an initial experience with Prisma, many people won't know that it's rate limited and may write it off as slow. Even if it's not super noticeable, you don't leave feeling good about the tech

All 9 comments

These limits seem a little strict. There are a lot of use cases where a delay of one second may lead to a laggy experience (even for just playing around).
What about a limit of 60 requests/minute. It's practically the same but may seem less obstructive in practice.

Thanks, for your feedback, @benseitz!

We're currently investigating how we can improve the experience when using the development cluster, and your suggestion is great 馃檪

I'll follow up here with more information.

Yeah just from an initial experience with Prisma, many people won't know that it's rate limited and may write it off as slow. Even if it's not super noticeable, you don't leave feeling good about the tech

@wesbos well said. I was having really slow response times on prisma eu1. I was worried about how it would perform in production. I was comparing the speeds to Graphcool Framework which is blazing fast :) maybe we were being spoilt with the BaaS speeds

Good to know it is being throttled and it's not the code. Would be great to know this up front as I was getting worried that I might have to find an alternative to prisma.

+1. First time I ran a query in playground it took about 2 seconds. I checked on the Graphcool Slack and discovered the thread that linked here. Had I not been on Slack I might have tried debugging the perf issue for a bit and then given up on the assumption it wasn't production ready. It gives a bad first impression.

I completely agree. We are rolling out a change to the limit so that it is calculated every minute as @benseitz suggested, essentially allowing you to burst for a short period.

We'll update this issue when deployed.

We did just roll the change to the limit. We changed the request limit to 10 requests per 10 seconds. We decided to use a shorter timeframe than suggested as we want to keep the timeframes short in which you cannot send any request because you hit the limit.
If that doesn't work well we are happy to tweak those settings again.

The limits are now documented here

This also applies (at least by default) when you deploy locally with docker right? How can it be configured / disabled?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

hoodsy picture hoodsy  路  3Comments

sedubois picture sedubois  路  3Comments

marktani picture marktani  路  3Comments

notrab picture notrab  路  3Comments

schickling picture schickling  路  3Comments