Hướng dẫn cài đặt nodejs trên directadmin

Bài viết sau sẽ giới thiệu NodeJS Node.js cho các bạn. Đây là một nền tảng sử dụng V8 JavaScript engine của Google để xây dựng các ứng dụng mạng [bao gồm webserver] được nhiều tổ chức đánh giá cao vì các đặc điểm như dễ dàng xây dựng và triển khai, dễ dàng mở rộng và phát triển ứng dụng đặc biệt là các ứng dụng cần trao đổi dữ liệu thời gian thực [real-time] và các ứng dụng chạy trên các thiết bị phân tán, di động…

1. Giới thiệu

Một số đặc điểm của Node.js như sau:

– ngôn ngữ lập trình chính phổ biến là JavaScript

– sử dụng Google V8 làm engine xử lý JavaScript nên tốc độ nhanh

– sử dụng mô hình non-blocking IO nên có hiệu suất xử lý tốt

– có chương trình quản lý thư viện riêng – npm [Node Packaged Modules], giống cpan của ngôn ngữ lập trình Perl, gem của Ruby.

– cộng đồng sử dụng, phát triển lớn

Phiên bản ổn định mới nhất[stable version]: 0.10.33

Phiên bản thử nghiệm mới nhất [unstable version]: 0.11.14

2. Hướng dẫn cài đặt trên CentOS 6 64bit

Áp dụng tương tự cho các dòng Red Hat® Enterprise Linux® / RHEL, CentOS and Fedora.

Yêu cầu cài đặt sẵn trên máy chủ các gói sau

– GCC 4.2 hoặc mới hơn

– GNU make 3.81 hoặc mới hơn

– python 2.6 hoặc 2.7

– libssl-dev

– libexecinfo

Cài đặt tất cả các thư viện cần thiết đã liệt kê ở trên bằng lệnh sau:

$yum -y groupinstall “Development Tools”

2.1 Cài đặt qua yum

Hiện tại nodejs và thư viện npm đã được phân phối trên EPEL repo, bạn có thể kiểm tra lại danh sách các repo bằng lệnh:

$yum repolist enabled

Hoặc cài đặt repo EPEL bằng lệnh sau cho phiên bản CentOS 6 64bit [x86_64]:

$rpm -Uvh //dl.fedoraproject.org/pub/epel/6/x86_64/epel…

Sau đó cài đặt NodeJS và npm bằng lệnh sau:

$yum install -y nodejs npm

2.2 Cài đặt từ mã nguồn

– download mã nguồn

$wget //nodejs.org/dist/v0.10.4/node-v0.10.4.tar.gz

– giải nén và cài đặt

$tar zxf node-v0.10.4.tar.gz

$cd node-v0.10.4

$./configure

$make

$make install

3. Khởi chạy một ứng dụng

Tạo một ứng dụng webserver in ra dòng dữ “Hello World” khi có request đến từ trình duyệt của người dùng, mã nguồn như sau:

var http = require[‘http’];

http.createServer[function [req, res] {

res.writeHead[200, {‘Content-Type’: ‘text/plain’}];

res.end[‘Hello World\n’];

}].listen[1337, ‘127.0.0.1’];

console.log[‘Server running at //0.0.0.0:1337/’];

Lưu lại file với tên example.js và chạy ứng dụng với câu lệnh sau:

$node example.js

Kiểm tra chương trình đã hoạt động ở port 1337 bằng lệnh

$netstat -lntp

Truy cập trình duyệt để kiểm tra kết quả:

//IP-của-máy-chủ:1337

4. Một số công cụ hỗ trợ

Mỗi khi ta tiến hành thay đổi mã nguồn của ứng dụng thì đều cần phải restart lại NodeJS bằng cách kill process NodeJS và khởi động lại để áp dụng những phần mới thay đổi trong mã nguồn hoặc khi bắt đầu chạy NodeJS thì đều phải giữ nguyên cửa sổ terminal, sử dụng lệnh ‘screen’… tuy nhiên có một số công cụ tự động giúp thực hiện điều này và còn bổ sung thêm nhiều chức năng khác.

forever: giúp ứng dụng NodeJS chạy liên tục và có thêm chức năng chạy nhiều process NodeJS cùng một lúc dưới dạng background services

cài đặt: npm install -g forever

chạy: forever -w app.js #-w là tùy chọn restart NodeJS khi nội dung file thay đổi

node-supervisor: giúp khởi động lại ứng dụng khi ứng dụng đó bị lỗi, theo dõi file thay đổi hoặc restart máy chủ khi cần thiết

cài đặt:

gõ lệnh ‘visudo’ và thêm ‘/usr/local/bin’ vào dòng ‘secure_path’, sau đó lưu lại và tiến hành cài đặt supervisor:

$npm -g install supervisor

chạy: $supervisor example.js

Tài liệu tham khảo:

– [The Wiki][//github.com/joyent/node/wiki]

– [nodejs.org][//nodejs.org/] Chúc bạn thành công!

THAM KHẢO CÁC DỊCH VỤ TẠI VINAHOST:

\>> SERVER – COLOCATION – CDN

\>> CLOUD – VPS

\>> HOSTING

\>> EMAIL

\>> WEBSITE

\>> TÊN MIỀN

\>> SSL

Kết nối với mình qua

VinaHost là nhà cung cấp hàng đầu trong lĩnh vực Máy Chủ – Hosting – Cloud nói riêng cùng các dịch vụ công nghệ khác nói chung tại thị trường Việt Nam và quốc tế. Được chính thức thành lập vào 5 – 2008, VinaHost đã nhanh chóng mở rộng hoạt động trên toàn cầu và phục vụ cho hàng ngàn khách hàng tại Việt Nam, Trung Quốc, Mỹ, Hàn Quốc, Nhật Bản, Singapore, Thái Lan và nhiều quốc gia khác trên toàn cầu.

Chủ Đề