Olá, antes de tudo, sou um mero júnior que vai tentar expor sua visão, talvez eu esteja equivocado em alguns pontos, então não leve isso como verdade absoluta.

Em primeiro lugar, o Fábio Akita está correto em sua colocação, de certa forma, a escolha da linguagem depende muito do contexto em que o projeto está inserido. Um projeto mal feito em Go não tem uma performance melhor do que um mal feito em PHP.

Outro ponto a ser discutido é sobre o design do sistema; desconsiderando totalmente a implementação, estudar a arquitetura do sistema é fundamental, visando sua evolução ao longo do tempo. Por exemplo:

  • Faz sentido implementarmos uma lógica de filas em uma aplicação que recebe menos de 10 requisições por segundo?
  • Talvez faça sentido, em alguns momentos, aumentarmos as instâncias das máquinas na AWS para suprir a alta demanda e reduzirmos essa quantidade em outros momentos, utilizando uma estratégia para distribuição de carga.
  • Implementarmos uma estratégia de cache talvez reduza a interação do sistema com o banco de dados.
  • Talvez, se alocarmos o sistema em uma máquina melhor, traga mais benefícios.
  • E se de fato implementarmos um sistema de fila, com o RabbitMQ, vai melhorar?
  • E se utilizarmos uma arquitetura orientada a eventos e afins? (Só divagando aqui agora)

O ponto que eu levantei com tudo isso é que, na discussão acima, eu não precisei falar de linguagem para discutirmos performance, escalabilidade, segurança, disponibilidade e outros pontos importantes para um sistema de qualidade.