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.