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

Intro Node.js Wiki Node.js 採用 Google 開發的 V8 引擎執行 JavaScript 代碼,通過事件驅動、非阻塞/非同步輸入輸出模型提應用效能,適用於併發需求。 與其他語言最大的不同之處: 傳統語言(如 PHP)使用阻塞 I/O 模型: 只有前一條命令執行完畢才會執行後面的命令 Node.js 使用非阻塞 I/O 模型: 任務可以發送後即繼續執行其他操作,多條命令可以同時被執行,通過回調函式如 Promise 得知任務完成狀態 總之,Node.js 承襲了 JavaScript 的 Event loop 的特性,在單一執行緒架構下可以輕易實現非阻塞 I/O 任務併發應用 Promise.all() 在 Event loop 中的概念可以對應 Multithreading 中的 […]

[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'); }); 使用指令 […]