Avatar of Nathaniel Fischer
Recommends
on
WebRTCWebRTC

You're going to want to look hard at WebRTC. It's what almost every realtime video service uses. The appeal is that it establishes a direct connection between peers so that the massive video bandwidth doesn't need to go through your backend. That aside, actor clusters will be the other technology that handle that sort of traffic well. It was popularized by erlang for telecom backbone, akka is another choice for actor systems.

Infrastructure wise, kubernetes would be a fine choice. Just make sure to look up some benchmarks for Container Network Interface (CNI) implementations that support high bandwidth traffic.

READ MORE
14 upvotes·1 comment·8.3K views
Nikhil Gurnani
Nikhil Gurnani
·
November 4th 2020 at 7:34AM

I absolutely second this recommendation! WebRTC is a must for apps that have high amount of audio / video streaming.

·
Reply
Recommends
on
PostgreSQLPostgreSQL

Postgres would be a decent choice. Familiar SQL tooling, indexable JSON columns for when you need to store schemaless noSQL like data, and if you find you have very large scale you can look to timescale db (a postgres based time-series database).

Oh and it's free.

READ MORE
3 upvotes·220 views
Recommends
on
PostgreSQLPostgreSQL

Those types of things should fit fine in a postgres json column. You'll actually have more flexibility with postgres because you can have a field as a normal column or in a json column, and you can have constraints and indexes on fields within a json column (or not).

READ MORE
1 upvote·406.7K views