O documento discute vários tópicos relacionados ao Node.js, incluindo sua instalação, funcionamento, ferramentas e bibliotecas populares. É apresentado como um ambiente de execução JavaScript assíncrono e de código não bloqueante que usa o modelo de programação orientado a eventos.
18. Instalação
Backup do ficheiro /etc/profile
cp -Ra /etc/profile /etc/profile.bckp
Adicionamos o caminho dos binários do node
echo "PATH=$PATH:/opt/node-latest-stable/bin" >> /etc/profile
Adicionamos o caminho das bibliotecas do node
echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/node-latest-
stable/lib" >> /etc/profile
Expor os binários e as bibiotecas ao SO
echo "export PATH LD_LIBRARY_PATH" >> /etc/profile
Restart
28. Socket.io
“WebSocket é uma tecnologia que permite a comunicação bidirecional por
canais full-duplex sobre um único socket Transmission Control Protocol (TCP)”
http://pt.wikipedia.org/wiki/WebSocket
30. Express
• Web framework
• Framework inpirada na framework Sinatra (Ruby)
• Conjunto de recursos já integrado (logger, routing,etc....)
packages people 'npm install' a lot
31. Express
var express = require('express')
var app = express()
app.get('/', function (req, res) {
res.send('Hello ISCTE')
})
app.listen(1337)
32. Colors
var colors = require('colors');
console.log('hello'.green); // outputs green text
console.log('i like cake and pies'.underline.red) // outputs red underlined text
console.log('inverse the color'.inverse); // inverses the color
console.log('OMG Rainbows!'.rainbow); // rainbow
console.log('Run the trap'.trap); // Drops the bass
most depended-upon packages
34. Logs
• Winston
Biblioteca para logging multi transporte
Permite extender o “transporte” dos logs
packages people 'npm install' a lot
35. Forever
• Gestor de processos de aplicações
forever start simple-server.js
forever restartall
forever logs
forever list
forever stop 0
36. PM2
• Gestor de processos de aplicações
pm2 start app.js
packages people 'npm install' a lot
37. PM2
• Gestor de processos de aplicações
pm2 start <app_name|id|all>
pm2 restart <app_name|id|all>
pm2 delete <app_name|id|all>
packages people 'npm install' a lot
38. PM2
• Gestor de processos de aplicações
pm2 describe 0
packages people 'npm install' a lot