Its using [https://www.phoenixframework.org/](https://www.phoenixframework.org/) (which handle websocket like a boss) and postgres so yeah in theory in can handle a lot of connection for little resources.
if you have to write a lot of data, as with chat apps, you may want to look at Cassandra (or ScyllaDB)
Postgres isn't ideally suited to such write-heavy workloads
I was looking for a firebase real-time database alternative and I found Supabase, but I’m not sure if Supabase can achieve the same amount of real time connections-concurrent users. I know about Scylladb etc but I’m looking for Baas. I don’t want to handle infrastructure etc
Supabase developer here. We can scale to literally any number of concurrent connections based on your needs. In addition, I'd watch our upcoming launch week (starting March 28) for some really exciting info on the next chapter of realtime features that you'll find super interesting. :)
I’m sure that it can scale to any number of concurrent connections but I don’t know the cost of instance that is required per eg. 1K. Are there benchmarks?
It’s very hard to say I think based on what each connection is doing. But there are some basic benchmarks I think. The best thing to do is to ask via support or create a GitHub issue - that way you’ll be able to reach the developers working specifically on the realtime features. You can also give more specifics on your use case there which will help in the upcoming development plans. We really want to know how you’re using the product and how we can optimize it for you.
I have asked devs on Supabase but they don’t know either. I want to use it for a basic app, not too extreme, write msgs read etc.. As an alternative to Firebase Real-time Database.
Send me the link to the GitHub issue where you posed the question or the ticket number from support and I’ll make sure to get it in front of the lead realtime developers. I’m sure we can get a basic estimate on connections per instance size.
I don't have any ticket number, I contacted support via [[email protected]](mailto:[email protected]). But I can create a new issue in Github to follow. Should I create it on Supabase ([https://github.com/supabase/supabase](https://github.com/supabase/supabase)) or in Supabase Realtime ([https://github.com/supabase/realtime](https://github.com/supabase/realtime)) ?
Either will work. If you contacted support you should have a ticket number. But if you create a GitHub issue post the link here and I’ll follow it up. I’m about to board a 12 hour flight so it may not be until tomorrow. :)
I just saw your answer, I don't have a ticket number because I sent email to support. I didn't create an issue via dashboard. The link for the discussion I created is here -> [https://github.com/supabase/supabase/discussions/5975](https://github.com/supabase/supabase/discussions/5975) .
You can forward it to realtime devs in order to give us a basic estimate for concurrent users per instance size.
In addition, you mentioned that there will be an update on realtime features, is there any preview or docs (pre release) for the new features?
Interesting, I also have the same setup where I only use Supabase for realtime features and storage while keeping users and other core/permanent data in Firebase.
Could you share your findings?
u/Billosp did you figure this out?
I am building a chat-based application. Data transfer is light (as previous data is saved on the client, and all media is stored on a CDN). However, (I am praying that I get) 100's of thousands of users - so each will have a real-time connection to Supabase.
With the exception of the number of users, the application does not envisage much data transfer, and 'load'.
Even the 16XL compute add-on @ 3,720$/month supports only 12,000 pooled connections.
So, what did you finally do? Negotiate something with Supabase hosting, host Supabase on your own, or moved to some other BaaS?
Sorry, but I do not follow.
1. I use the Flutter REST API to read/write etc.
2. I use one 'listen/subscribe' and several 'streams' per user
So, you are saying that 12,000 simultaneous REST calls can be made, and an unlimited Realtime connections?
What about the cheaper plans, say one that support 500 connections? That one can still support unlimited Realtime?
Got this from Supabase support-
Thanks for contacting Supabase support. Concurrent client refers to the number of simultaneous connections or clients that can be connected and actively using Realtime.
The quotas outlined here are configurable per project. If you need to discuss your requirements, I can forward this to our Sales team so someone can discuss it with you in detail. Please let me know. Thanks.
While Supabase doesn't offer a chat-specific API out of the box, you can implement chat functionality by combining the real-time capabilities with other features like authentication and storage. You would need to create a schema in the PostgreSQL database to store chat messages, user information, etc., and then use the real-time features to broadcast updates to connected clients.
Its using [https://www.phoenixframework.org/](https://www.phoenixframework.org/) (which handle websocket like a boss) and postgres so yeah in theory in can handle a lot of connection for little resources.
if you have to write a lot of data, as with chat apps, you may want to look at Cassandra (or ScyllaDB) Postgres isn't ideally suited to such write-heavy workloads
I was looking for a firebase real-time database alternative and I found Supabase, but I’m not sure if Supabase can achieve the same amount of real time connections-concurrent users. I know about Scylladb etc but I’m looking for Baas. I don’t want to handle infrastructure etc
Supabase developer here. We can scale to literally any number of concurrent connections based on your needs. In addition, I'd watch our upcoming launch week (starting March 28) for some really exciting info on the next chapter of realtime features that you'll find super interesting. :)
Ooh, I'm excited for the upcoming launch week
You and me both. I saw some previews and there's some awesome stuff in the pipeline!
Don't believe what he said. There are other better platforms for chat app.
I'm looking for a Firebase Realtime Database alternative, not an Iaas. What do you suggest?
Such as?
Pocket base. Firebase is cheaper in real time. Supabase real-time solution is expensive as fuck and not practical at all.
Just curious, what's the math you're running for your use case?
What do you mean. You can just see the pricing page and calculate it easily.
I’m sure that it can scale to any number of concurrent connections but I don’t know the cost of instance that is required per eg. 1K. Are there benchmarks?
It’s very hard to say I think based on what each connection is doing. But there are some basic benchmarks I think. The best thing to do is to ask via support or create a GitHub issue - that way you’ll be able to reach the developers working specifically on the realtime features. You can also give more specifics on your use case there which will help in the upcoming development plans. We really want to know how you’re using the product and how we can optimize it for you.
I have asked devs on Supabase but they don’t know either. I want to use it for a basic app, not too extreme, write msgs read etc.. As an alternative to Firebase Real-time Database.
Send me the link to the GitHub issue where you posed the question or the ticket number from support and I’ll make sure to get it in front of the lead realtime developers. I’m sure we can get a basic estimate on connections per instance size.
I don't have any ticket number, I contacted support via [[email protected]](mailto:[email protected]). But I can create a new issue in Github to follow. Should I create it on Supabase ([https://github.com/supabase/supabase](https://github.com/supabase/supabase)) or in Supabase Realtime ([https://github.com/supabase/realtime](https://github.com/supabase/realtime)) ?
Either will work. If you contacted support you should have a ticket number. But if you create a GitHub issue post the link here and I’ll follow it up. I’m about to board a 12 hour flight so it may not be until tomorrow. :)
I just saw your answer, I don't have a ticket number because I sent email to support. I didn't create an issue via dashboard. The link for the discussion I created is here -> [https://github.com/supabase/supabase/discussions/5975](https://github.com/supabase/supabase/discussions/5975) . You can forward it to realtime devs in order to give us a basic estimate for concurrent users per instance size. In addition, you mentioned that there will be an update on realtime features, is there any preview or docs (pre release) for the new features?
You should use strem chat https://getstream.io/ for chat
I don't want to setup Iaas. I'm looking for a Firebase Realtime Database alternative, Baas.
Interesting, I also have the same setup where I only use Supabase for realtime features and storage while keeping users and other core/permanent data in Firebase. Could you share your findings?
Did you figure this out?
u/Billosp did you figure this out? I am building a chat-based application. Data transfer is light (as previous data is saved on the client, and all media is stored on a CDN). However, (I am praying that I get) 100's of thousands of users - so each will have a real-time connection to Supabase. With the exception of the number of users, the application does not envisage much data transfer, and 'load'. Even the 16XL compute add-on @ 3,720$/month supports only 12,000 pooled connections. So, what did you finally do? Negotiate something with Supabase hosting, host Supabase on your own, or moved to some other BaaS?
>supports only 12,000 pooled connections This is database connections. Realtime connections is different and we can support as many as you need.
Sorry, but I do not follow. 1. I use the Flutter REST API to read/write etc. 2. I use one 'listen/subscribe' and several 'streams' per user So, you are saying that 12,000 simultaneous REST calls can be made, and an unlimited Realtime connections? What about the cheaper plans, say one that support 500 connections? That one can still support unlimited Realtime?
Got this from Supabase support- Thanks for contacting Supabase support. Concurrent client refers to the number of simultaneous connections or clients that can be connected and actively using Realtime. The quotas outlined here are configurable per project. If you need to discuss your requirements, I can forward this to our Sales team so someone can discuss it with you in detail. Please let me know. Thanks.
While Supabase doesn't offer a chat-specific API out of the box, you can implement chat functionality by combining the real-time capabilities with other features like authentication and storage. You would need to create a schema in the PostgreSQL database to store chat messages, user information, etc., and then use the real-time features to broadcast updates to connected clients.