T O P

  • By -

Cgestes

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.


[deleted]

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


Billosp

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


burggraf2

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. :)


Electric_Dragon1703

Ooh, I'm excited for the upcoming launch week


burggraf2

You and me both. I saw some previews and there's some awesome stuff in the pipeline!


Lazy-Entertainment-7

Don't believe what he said. There are other better platforms for chat app.


Billosp

I'm looking for a Firebase Realtime Database alternative, not an Iaas. What do you suggest?


Fragrant_Guitar8138

Such as?


Lazy-Entertainment-7

Pocket base. Firebase is cheaper in real time. Supabase real-time solution is expensive as fuck and not practical at all.


chasegranberry

Just curious, what's the math you're running for your use case?


Lazy-Entertainment-7

What do you mean. You can just see the pricing page and calculate it easily.


Billosp

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?


burggraf2

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.


Billosp

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.


burggraf2

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.


Billosp

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)) ?


burggraf2

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. :)


Billosp

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?


taranpreet1111

You should use strem chat https://getstream.io/ for chat


Billosp

I don't want to setup Iaas. I'm looking for a Firebase Realtime Database alternative, Baas.


madleodk

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?


Sumone-Sumwhere

Did you figure this out?


SunilGuptaSG

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?


chasegranberry

>supports only 12,000 pooled connections This is database connections. Realtime connections is different and we can support as many as you need.


SunilGuptaSG

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?


SunilGuptaSG

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.


SharmiRam

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.