Preview: Managed Upstash Redis with read replica support

Ah yes, this is pretty much what I was asking for, was this added recently? I totally missed this.

Thanks!

Backups aren’t available yet. We’ve been discussing it internally. Were you already using this with Upstash Redis?

I had never used Upstash before, so no. And I’m not storing anything important in there at the moment so it’s not a big deal for me. I’m mostly wondering whether or not I could start storing sensitive data at some point :smile:

If it helps, Upstash databases are already ā€˜highly available’: there are at least two full copies in your database primary region.

It would be great to revisit the pricing a bit. I have several small apps with low usage, but I have to pay for two redises more (20$) than I do pay for a whole fleet of nodes and pg (16$).

I’d be happy with 100Mb instances for 5$ or so.

1 Like

This is interesting. I assume that you couldn’t use the 100MB free Redis plan because you can only provision one per organization?

Yes, the UI says I can only have a single 100Mb instance.

What about using the same Redis instance with different databases?

Mr Perham does not recommend it:

Don’t use environment-specific prefixes. Each environment should use a separate Redis database altogether, otherwise all of your environments will share the same retry and scheduled sets and chaos will likely ensue.

In this case, I’m referring to using a different internal Redis database, not namespaces. see Mike’s post about this: Storing Data with Redis | Mike Perham

As as you don’t need different eviction policies for each db, this approach should work.

1 Like

Wow, didn’t mind about using different databases, thank you, will try it!

No, it does not work. Looks like Upstash does not allow to have more than 1 database even in 200Mb plan:

āÆ fly redis connect 
? Select a database to connect to redis (fra) personal
Proxying local port 16379 to remote [fdaa:0::0:1::6]:6379
127.0.0.1:16379> select 1
(error) ERR Only 0th database is supported! Selected DB: 1
127.0.0.1:16379> 

Yes, you’re right - at the moment using namespaces would be the only way.

So we’re getting back to initial question. There should be some option for small apps.

Upstash has plans to support multiple databases, and we’re considering adding either usage-based pricing or smaller plans. No ETA yet though.

2 Likes

That’s sad.

I don’t understand what I’m paying 10$ for. For this? I didn’t even get a single timeout in several years with Heroku.
What a shame.

That’s easy to fix. Our infrastructure connects you through a load balancer. Connections timeout after 60s of inactivity. Just configure your driver to either reconnect on timeout, or send a PING every so often.

Timeouts should actually only happen on idle connections after 24 hours. What is the actual frequency of timeouts you’re seeing right now @rozhok?

Related to the original question: we’ll likely soon introduce a pay-as-you-go payment plan for Upstash Redis which would serve your needs. That plan would take into account Sidekiq’s busy design and ignore commands with empty replies.

I see you’ve lowered prices for redis. Great to see it, thank you!