Node.js + Microsoft Windows

84 views
Skip to first unread message

Igor Soto

unread,
Mar 13, 2014, 9:55:25 PM3/13/14
to nod...@googlegroups.com
Pessoal, boa noite!

Essa é minha primeira participação no grupo.

Hoje acabei a leitura do livro do Caio Ribeiro Pereira, Node.js - Aplicações web real-time com Node.js. Meu objetivo na leitura do livro é que na empresa em que trabalho, pretendemos implementar algumas aplicações com Node, segui o livro todo utilizando o Windows como plataforma.

Nessa empresa, temos todo o ambiente Microsoft, servidores Windows Server, SQL Server e plataforma .NET de desenvolvimento, ou seja, a cultura da empresa é toda Microsoft. E um pouco fechados quanto a adoção de outras plataformas. Eu, inclusive, sou Analista Desenvolvedor .NET lá.

Pois bem, como esse mundo Node é muito novo pra mim, e pra equipe também, gostaria da opinião de vocês com relação ao funcionamento do Node na plataforma Microsoft (Windows Server + IIS + etc). 

No decorrer do livro tive alguns problemas que tive que pesquisar por fora para fazer algumas coisas funcionarem. Lembrando também que no Windows depende do componente IIS Node para funcionar no servidor IIS.

Alguém já vivenciou um projeto Node na plataforma Microsoft? Funciona bem? É confiável?

Estou meio desconfiado, queria uma terceira opinião.

E Caio, se ler esse post, parabéns pelo livro, realmente uma referência e tanto no seguimento.

Valeu!

Abraços!

Igor Soto

principe...@gmail.com

unread,
Mar 14, 2014, 7:32:22 AM3/14/14
to nod...@googlegroups.com
eu sou desenvolvedor php a um bom tempo, e trabalho numa empresa num projeto grande, quero colocar o node para aplicacoes realtime e para mobile, entretanto este projeto tem autenticacao no Active Directory do Windows Server, entretando eu nao consegui instalar nenhuma biblioteca para autenticar o node no AD. Tive que balancear com servidor linux. Fora isso, eu nao tive problema, pode ser que voce ae consiga.


--
Você recebeu essa mensagem porque está inscrito no grupo quot;Node.js Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para nodebr+un...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Renato Cantarino

unread,
Mar 14, 2014, 7:49:43 AM3/14/14
to nod...@googlegroups.com
--

Att,
Renato Cantarino

principe...@gmail.com

unread,
Mar 14, 2014, 7:58:19 AM3/14/14
to nod...@googlegroups.com
exatamente, eu testei 4 libs, eles sempre reclamam do python...

Renato Cantarino

unread,
Mar 14, 2014, 7:59:04 AM3/14/14
to nod...@googlegroups.com
Reclamam da versao?

principe...@gmail.com

unread,
Mar 14, 2014, 8:00:34 AM3/14/14
to nod...@googlegroups.com
sim...mesmo instalando a versao correta, eles reclamam, eu acho que eh por ser windows...kkkk...pq no linux independente do q vc instalar ele sempre busca as dependencias.

Renato Cantarino

unread,
Mar 14, 2014, 8:01:58 AM3/14/14
to nod...@googlegroups.com
Nao, o problema esta no Registro....
Tem q mudar a Key no registro do Windows... uma gambireta dos macacos.....

principe...@gmail.com

unread,
Mar 14, 2014, 8:04:23 AM3/14/14
to nod...@googlegroups.com
qual registro?

Elton Charles

unread,
Mar 14, 2014, 8:07:21 AM3/14/14
to nod...@googlegroups.com
a variável de ambiente do windows. Ela provavelmente está apontando para a versão errada do python. 

Renato Cantarino

unread,
Mar 14, 2014, 8:10:19 AM3/14/14
to nod...@googlegroups.com
OK, vc pode mudar nas variaveis. mas nao funciona, pq na register key esta apontando para outra versao!
estou procurando o post do workaroun que eu vi.
GUenta ae.


Em 14 de março de 2014 09:07, Elton Charles <elton...@gmail.com> escreveu:
a variável de ambiente do windows. Ela provavelmente está apontando para a versão errada do python. 

--
Você recebeu essa mensagem porque está inscrito no grupo quot;Node.js Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para nodebr+un...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--

Att,
Renato Cantarino

principe...@gmail.com

unread,
Mar 14, 2014, 8:10:46 AM3/14/14
to nod...@googlegroups.com
hm...vou verificar isto...


Em 14 de março de 2014 09:07, Elton Charles <elton...@gmail.com> escreveu:
a variável de ambiente do windows. Ela provavelmente está apontando para a versão errada do python. 

--

Elton Charles

unread,
Mar 14, 2014, 8:17:13 AM3/14/14
to nod...@googlegroups.com
Comigo funcionou pelas variáveis de ambiente ao utilizar a lib do AD, o erro que me reportava era que o comando "python" estava retornando a versão errada do Python e que devia ser menor que 3 e maior que a 2.3. 

Nisso eu mudei nas variáveis de ambiente o trecho do "python" para o caminho da instalação correta.

Problema que tive com o windows que nunca resolvi foi bibliotecas compiladas, como a de leitura de excel, em windows necessitava de versões especificas do .NET framework, nunca conseguir fazer funcionar  a visual c++.



Caio Ribeiro Pereira

unread,
Mar 14, 2014, 9:09:42 AM3/14/14
to nod...@googlegroups.com
Fala Igor tudo bem? 

Obrigado por usar meu livro como referência, fico feliz em saber que esta sendo útil para você.

Sobre Node em ambiente Microsoft nunca trabalhei, então não sou o melhor cara para compartilhar minhas experiências nisso.

Giovanni Bassi

unread,
Mar 14, 2014, 1:24:23 PM3/14/14
to nod...@googlegroups.com
Eu tenho experiência no Windows e em Linux, tanto pra desenvolvimento quanto pra Produção.
O node em si roda muito bem no Windows, não me lembro de ter encontrado um blocker no uso do Node. O problema são os pacotes. Como o Node foi desenvolvido no mundo Linux e Unix os pacotes são focados nesses ambientes. Muitos pacotes assumem que você tem algo a mais disponível, como o Python por exemplo. É o tipo de coisa comum e fácil de configurar no Linux, mas não no Windows. O make é outro problema. Vá compilar um contextify ou um bcrypt no Windows pra ver a dor de cabeça.
O grunt também já vi ter comportamentos diferentes, precisaria investigar mais, mas algo que roda de um jeito no Linux roda de outro no Windows. O Watch de arquivos pelo que eu me lembro não funciona direito.
Eu prefiro desenvolver node no Linux porque prefiro o ambiente nativo. Uso Vim, Gnome com multiplos workspaces, enfim. Dá pra desenvolver no Windows, mas é uma experiência inferior. Uma linguagem dinâmica vai ganhar pouco de qualquer IDE, então não faz sentido usar um Visual Studio, por exemplo, que é sensacional pra C#, mas não faz diferença pra JavaScript ou CoffeeScript. Ou um Eclipse. Por isso que o Rubymine nunca pegou no meio Ruby também. Talvez com TypeScript ele fique legal, mas nunca experimentei, ainda preciso pegar um projeto pra ver se vale a pena, e ainda assim não sei se preferiria ficar no Windows.

Se você for rodar a aplicação no Windows, talvez tenha problema de compilação dos pacotes nativos (como o bcrypt que eu falei). Se tudo compilar, vai rodar.

Não posso dizer que o desempenho é melhor ou pior em um ou outro, não fiz benchmark.

Uso o node também no dia a dia nos projetos de .NET na Lambda3, aos poucos a empresa está adotando (também usamos nos projetos de Java e Ruby). Node é uma ferramenta de desenvolvimento sensacional, com o Grunt (ou Gulp), Bower, Requirejs, CoffeeScript, etc. Mas não posso dizer que é uma experiência suave. É difícil integrar na stack Microsoft, é muito esforço. O setup de um projeto .NET que usa Bower é complicado. Até fiz uns Nuget pra facilitar:

Esses pacotes podem evoluir muito ainda, mas é um começo.

[]s

Giovanni Bassi



--

Gustavo Duarte

unread,
Mar 14, 2014, 1:58:55 PM3/14/14
to nod...@googlegroups.com
2014-03-14 11:24 GMT-06:00 Giovanni Bassi <gig...@giggio.net>:
Eu tenho experiência no Windows e em Linux, tanto pra desenvolvimento quanto pra Produção.
O node em si roda muito bem no Windows, não me lembro de ter encontrado um blocker no uso do Node. O problema são os pacotes. Como o Node foi desenvolvido no mundo Linux e Unix os pacotes são focados nesses ambientes. Muitos pacotes assumem que você tem algo a mais disponível, como o Python por exemplo. É o tipo de coisa comum e fácil de configurar no Linux, mas não no Windows. O make é outro problema. Vá compilar um contextify ou um bcrypt no Windows pra ver a dor de cabeça.

^^^ Isso.


Minha experiência é exatamente essa. Node em si funciona bem, mas o ecosistema em geral (ferramentas, pacotes, etc.) geram várias dores de cabeça.

É complicado porque 99% dos devs em Node estão usando Mac no desktop e Linux pra deployment. Na NodeConf eram tipo 49 macs pra 1 máquina Windows. Então todo teste, pacote, how to, etc., acaba focando em Mac / Linux, e deixando o Windows de fora.

Eu cheguei a escrever código usando Node em Windows por alguns meses (mexo com .NET desde o Beta 1 em 2000 hahah), mas não recomendo. Se eu não pudesse desenvolver / deploy em Unix (Mac e Linux no meu caso), eu não usaria Node.

Gustavo Duarte

unread,
Mar 14, 2014, 2:01:13 PM3/14/14
to nod...@googlegroups.com
Quanto à confiável: eu diria que SIM. Se você solucionar os build issues, package issues, e os packages que você precisar funcionarem em Windows, acho que será confiável sim. Acho que é meio binário: ou funciona ou não. Na minha experiência e pelo que sei de Node, eu não imagino que você teria algum bug sutil ou sinistro, meio que "ou vai ou racha."

principe...@gmail.com

unread,
Mar 14, 2014, 2:11:30 PM3/14/14
to nod...@googlegroups.com
pois eh, teve biblioteca que funcionou no windows (restify) ja oturos (como no caso do AD) nao...entao, esse problema varia de pacote pra pacote...


Igor Soto

unread,
Mar 14, 2014, 2:19:50 PM3/14/14
to nod...@googlegroups.com
Giovanni, obrigado por compartilhar sua experiência, clareou bastante minha mente.

Sobre desenvolver aplicações Node utilizando o Visual Studio, estava dando uma olhada nesse componente:


Node.js Tools for Visual Studio

Estou para testá-lo mas ainda não tive tempo.

Abraços!

Felippe Raposo

unread,
Mar 15, 2014, 1:30:29 PM3/15/14
to nod...@googlegroups.com
Bro, usa o vagrant e sobe um Linux env no seu windows po...http://www.vagrantup.com/
Reply all
Reply to author
Forward
0 new messages