[Node.js] Node.js Web 開發環境與語言架構指南

Intro Node.js Wiki Node.js 採用 Google 開發的 V8 執行程式碼,使用事件驅動、非阻塞/非同步輸入輸出模型等技術來提高效能,可優化應用程式的傳輸量和規模。 Node.js 主要用於編寫應用於Web伺服器,與其他語言最大的不同之處: 如 PHP 等語言為阻塞I/O: 只有前一條命令執行完畢才會執行後面的命令 Node.js 為非阻塞I/O: 多條命令可以同時被執行,通過回呼函式得知命令已結束執行 總之,Node.js 結合了 JavaScript 的易學易用和 Unix網路編程的特性。 Thread (執行緒) Node.js 以單執行緒執行,使用非阻塞I/O呼叫,來支援並行連線。Node.js 應用程式的設計目標是任何需要操作I/O的函式都使用回呼函式。 這種設計的缺點是,如果不使用 cluster 或 pm2 等模組,Node.js 就難以處理多核或多執行緒等情況。 安裝 Node.js Downloads – Node.js 檢查版本 […]

[NodeJS] NodeJS Guide – 基礎環境指南

Intro NodeJS官網 各平台依照指示下載安裝即可。 Get Started 安裝NodeJS:Debian/Ubuntu Installation instructions 撰寫一個app.js檔for web: How do I start with Node.js after I installed it? 按照上述,$ node app.js運行web server。 訪問http://127.0.0.1:3000/,也可以改hostname為內外網IP對外測試。 反向代理 Reverse Proxy 可以使用nginx做反向代理NodeJS App,如上述3000port本地web app,nginx反向代理設定範例如下: server { listen 80; server_name _; location / { […]

[NodeJS] Gulp with plugins 前端完整解決方案教學

Gulp基本安裝 安裝NodeJS至目前OS上,將使用NodeJS的NPM管理套件(Command Line) 查看版本:node -v , npm -v 先在全域(Global)安裝Gulp: npm install -g gulp Gulp.js on Github 進入到專案資料夾,進行NPM專案初始化: npm init 主要目的是建立package.json,以便繼續安裝Packages。 進入到專案資料夾,進行Package安裝(Dev Mode): npm install gulp –save-dev 查看版本: gulp –version 建立gulpfile.js於專案資料夾: var gulp = require('gulp'); gulp.task('hello', function(){ console.log('Hello Gulp.js'); }); 使用指令 […]