O redis faz isso! O SqLite faz isso! E tem serviços que fazem isso tbm, a CloudFlare tem essas paradas!

Mas se seu cliente disse que é tudo ele tem que pagar bem! Vai precisar de equipe de devops e esse projeto tende a demorar meses para sair do papel para suportar esses 4 milhões!

PM2 é um gerenciador de processos para o runtime JavaScript Node.js. quando vc coloca ele pra rodar em N processadores é o mesmo que usar o Cluster do Node! Um mesmo PC com 5 processadores e cada um rodando o mesmo projeto Node completo.

um S3 ou um R2 ou o serviço de streaming da Cloudflare nem precisa passar pela sua aplicação os vídeos nem pra upload nem pro usuário ver!

Ctz que precisa de uma equipe de Devops? tipo no futuro ele provavelmente vai se tornar maior porém por agora não passa de uma pagina de cadastro com uns videos e umas 2/3 telas

Ué, não é 4 milhões em 4 meses? Se não me engano isso da 1.55 requests por segundo! Mas pense não é apenas 1 request. O requeste d página o front segura de boa! Agora usar a aplicação(cadastro, colocar, tirar coisas(caso o user seja permitido)), usar o banco e baixar o vídeo. Se o vídeo tiver no seu servidor tranformar ele em streaming tem custos altos em processamento. Depende de como você vai fazer! Se for apenas um cadastro de email. E o vídeo vier de outras fontes(s3, r2 outro sistema de streaming) Um servidor pequeno deve aguentar de boa! Como eu disse antes, depende muito de como será a implentação do projeto! Abraços