Giới thiệu và cài đặt kết nỗi với MongoDB

Một phần của tài liệu Báo cáo thực tập môn học hệ thống thông tin tích hợp Đ ti xây dựng website mạng xã hội (Trang 41 - 45)

CHƯƠNG 4: CHƯƠNG 4: CÀI ĐẶT CHƯƠNG TRÌNH

4.1 Giới thiệu về MERN Stack

4.1.2 Giới thiệu và cài đặt kết nỗi với MongoDB

MongpoDB là một cơ sở dữ liệu NoSQL phô biên, hỗ trợ câu trúc dữ liệu dạng tài liệu JSON với các schema động, làm cho việc tích hợp dữ liệu ở một số loại ứng dụng trở nên dễ dàng và nhanh chóng. Để thiết lập kết nối tir tng dung Node.js của bạn đến MongoDB, ban cần thực hiện một số bước cơ bản sau đây:

1. Cai dat MongoDB:

Trước hết, cần cải đặt MongoDB lên máy chủ hoặc máy tính cá nhân của mình. Nếu muốn kết nối đến một cơ sở dữ liệu MongoDB được hosted, ví dụ như trên MongoDB Atlas, có thể bó qua bước này và sử dụng connection strine đã được cung cap.

2. Cai dat Mongoose:

Mongoose la m6t Object Data Modeling (ODM) library cho MongoDB va Node.js. Nó giúp quản lý mỗi quan hệ giữa dữ liệu, cung cap cau tric schema validation và được sử dụng đề đễ dàng tương tác với MongoDB thông qua Node.Js.

Dé cai dit Mongoose, sử dụng npm hoặc yarn:

npm install mongoose hoặc

yarn add mongoose

3. Kết nối MongoDB str dung Mongoose:

Sau khi da cai dat mongoose, ban có thé thiét lap kết nối tới MongoDB bang cách thêm đoạn code sau vào ứng dụng Node.Js của mình:

const mongoose = requIre(mongoose');

mongoose.connect(‘mongodb+srv://your-username:y our-password@y our- cluster-url/your-db-name? retry Writes=true&w=majority’, {

useNew UrlParser: true, useUnifiedTopology: true

})

.then(() => console.log(‘MongoDB Connected')) .catch(err => console.log(err));

Dam bao thay thé your-username, your-password, your-cluster-url và your-db- name bằng thông tin cụ thể của bạn. Nếu bạn đang str dung MongoDB local, connection string sé giống như sau:

mongoose.connect('mongodb:/ocalhost:27017/your-db-name', { useNew UrlParser: true,

useUnifiedTopology: true

});

Luu y: useNewUrlParser va useUnifiedTopology là những optlons được đặt vào để sử dụng cac parser URL moi va engine discovery va monitoring cua MongoDB theo dé xuat.

Viéc su dung cac environment variable đề lưu trữ sensitive information nhu username, password, và URL của MongoDB là một phương pháp tốt để giữ thông tin này an toàn.

Sau khi đã thiết lập kết nối, bạn có thể bắt đầu định nghĩa Schemas và Models để làm việc với dữ liệu của mình trong MongoDB. Mongoose cung cấp rất nhiều tính năng và phương thức tiện lợi srúp quản ly dữ liệu một cách hiệu quả.

3.1.3 Giới thiệu và cài đặt SocketlO

Socket.IO là một thư viện JavaScript cho phép thực hiện giao tiếp thời gian thực, hai chiều giữa các máy chủ web và clients. Nó sử dụng WebSocket làm nền tảng để

tạo ra một kết nối thời s1an thực, nhưng nếu môi trường không hỗ trợ WebSocket,

thi nó có thê chuyển đổi và sử dụng nhiều cách kết nối khác nhau không giảm hiệu

suât.

Cai Dat Socket.1O:

Đề bắt đầu sử dụng Socket.IO trong dự án Node.Js của bạn, đầu tiên bạn cần cài đặt nó thông qua npm hoặc yarn:

Trên máy chủ (backend) sử dụng Node.Js:

npm install socket.1o

hoặc

yarn add socket.io

Sau khi cài đặt, bạn có thể thiết lập một server Socket.IO như sau:

const server = require(http').createServer();

const 10 = require('socket.io')(server, { // options

});

10.0n(‘connection', socket => { console.log('‘A user connected’);

socket.on(‘disconnect'’, () => { console.log('User disconnected’);

});

});

server.listen(3000, () => {

console.log(‘Socket.1O server running at http://localhost:3000/);

});

Trén Client (frontend):

Bạn cũng cần phải bao gồm thư viện Socket.IO client trong ing dung frontend cua mình. Nếu bạn đang làm việc với HTML thuần, bạn có thể thêm Socket.IO client thông qua CDN:

<script src="/socket.10/socket.10.js"></script>

<scnpt>

const socket = io(‘http://localhost:3000');

</script>

Đối với các dự án client siđe hiện đại, bạn có thê cài đặt Socket.IO client thông qua npm hoặc varn:

npm install socket.1o-client

hoặc

yarn add socket.io-client

Và sau đó sử dụng như sau trong ma JavaScript cua ban:

import io from 'socket.io-client'’;

const socket = io(‘http://localhost:3000');

Tương tác giữa Server va Client:

Sau khi kết nối, bạn cú thể bắt đầu gửi sự kiện ứ1ữa server và client.

Vị dụ trên Server:

10.0n(‘connection', socket => {

socket.emit(hello', 'Hello from Server!');

});

Vi du trén Client:

socket.on(‘hello', message => {

console.log(message); // logs 'Hello from Server!'

});

Tính Năng của Socket.IO:

- Giao tiếp thời gian thực hai chiều.

- Tự động kết nối lại.

- Packet buffering - Server ty động buffer lệnh sửi nếu client chưa kết nối.

- Hỗ trợ binary streaming.

- Cung cấp khả năng phân phòng để chia sẻ đữ liệu đến một nhóm người dùng cụ

thể.

Socket.IO được sử dụng rộng rãi trong các ứng dụng web yêu cầu giao tiếp thời gian thực, như các trò chơi trực tuyến, chat và ngay cả trone các hệ thông như

trading và collaboration tools. Hãy sáng tạo và xem bạn có thể làm gi voi Socket. IO trong dự án cua minh!

Một phần của tài liệu Báo cáo thực tập môn học hệ thống thông tin tích hợp Đ ti xây dựng website mạng xã hội (Trang 41 - 45)

Tải bản đầy đủ (PDF)

(55 trang)