Eu me beneficiaria em mudar do PHP para Node.js (em contexto) [fechado]

8

A situação: estamos prestes a lançar o que é essencialmente um serviço de registro. Como somos bastante pesados ​​em PHP, a implementação atual o utiliza.

Teremos cerca de 200 computadores (a maioria na mesma rede) que enviarão, via HTTP POST, cerca de 5000 solicitações / dia. Com cada solicitação contendo cerca de 300 bytes de dados.

O terminal de recebimento está hospedado na Amazon e é um formulário PHP muito simples, com alguma validação simples que coloca tudo em um banco de dados.

Agora, fui apresentado recentemente ao Node.js e estou curioso para saber se seria um bom ajuste para o back-end aqui.

Concedido, eu poderia facilmente criar algo para testar isso. Mas, como não compreendi completamente a metodologia assíncrona, gostaria que alguém com experiência me explicasse isso.

danneth
fonte
Este é o meu primeiro post sobre programadores, por isso não tenho certeza sobre o tipo de perguntas preferido. Isso pode ser "voto negativo", mas estou assumindo o risco.
danneth
2
+1. A pergunta parece boa para mim: construtiva e não muito localizada.
Arseni Mourzenko
10
Por que você está considerando outra plataforma, se a atual funciona? A curiosidade é ótima, mas, dada a sua configuração e necessidades, acho que você não deveria experimentar isso apenas por uma questão de ciência. Não sei se o PHP faz tudo o que você deseja, mas se o fizer, não vejo sentido em mudar de plataforma. O Node.js é ótimo, e se familiarizar com ele será extremamente valioso, mas talvez você deva considerar fazê-lo em um projeto menor? Algo mais apropriado para experimentação?
yannis
@YannisRizos Como você disse, acho que a configuração atual vai funcionar muito bem, mesmo se / quando crescermos. Então, de certa forma, é apenas para ciência e referência para projeto futuro. Provavelmente não vou mudar nada, mas sim brincar com a ideia de aumentar minha compreensão do Node. Basicamente - dar um exemplo do mundo real e esperança para algumas respostas esclarecedoras :)
danneth
1
@YannisRizos Eu sempre acho que um teste rápido e simples é suficiente para me dizer se vale a pena prosseguir ou não, mas para realmente ver se é capaz, preciso de um projeto maior para trabalhar - e não há nada melhor do que uma reescrita (por fins de teste) de uma configuração existente. O maior benefício é que você pode ver se funciona exatamente como antes e também pode usá-lo para comparar diretamente o desempenho.
precisa saber é o seguinte

Respostas:

11

Teremos cerca de 200 computadores (a maioria na mesma rede) que enviarão, via HTTP POST, cerca de 5000 solicitações / dia. Com cada solicitação contendo cerca de 300 bytes de dados.

Isso é cerca de 10 req / s. Portanto, é claro que você não precisa mudar .

Benefícios reais da mudança (além de obter uma experiência valiosa)? Bem, como você disse, você está hospedando na Amazon. Com o node.js, você terá menos carga, o que significa que você pode até usar uma micro instância para esse tipo de carga, economizando algum dinheiro. Além disso, por ser uma estrutura assíncrona, pode reduzir a latência, por exemplo, enviando a resposta antes de salvar no banco de dados.

vartec
fonte
7

Se você e sua equipe têm uma boa experiência com PHP e é simples de implementar, eu continuaria com isso. Se a quantidade de tráfego aumentar e a simultaneidade for um problema, pode valer a pena entender o nó (além disso, é sempre divertido aprender um novo idioma !!).

O outro benefício do nó é; ele é rápido .

Mas novamente neste cenário, não consigo imaginar que algum PHP bem escrito tenha alguma dificuldade em lidar com a carga.

Awalias
fonte
O Load provavelmente não será um problema nesse caso, mais ainda em um projeto proposto. O que esta experiência (como pensamento e desenvolvimento potencial) é destinado a é obter uma compreensão sobre como e quando a concorrência será benéfico
danneth
Além disso, se você realmente precisa de velocidade e escalabilidade, eu consideraria olhar vert.x
K ..
0

Eu usei o node.js para minha tese de bacharelado e foi uma experiência muito agradável. Além disso, foi usado em conjunto com um aplicativo php para que eu pudesse comparar as duas tecnologias.

Se você tiver tempo suficiente em suas mãos (não muito, se você estiver familiarizado com javascript), poderá experimentá-lo. Dessa forma, você saberá se deve implementá-lo no próximo projeto, o que pode exigir mais simultaneidade.

Awemo
fonte
0

A melhor explicação para a assíncrona do nó é o livro Node Beginners . É grátis (mas vale os US $ 10). Ele explicará como escrever seus servidores de nó e está muito bem escrito.

gbjbaanb
fonte