Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

71 36 0
Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

MỤC LỤC GIỚI THIỆU CHƯƠNG 1: KIẾN THỨC NỀN TẢNG 1.1 Đặt vấn đề 1.2 Cơ sở liệu hướng tài liệu 1.3 Giao thức HTTP 1.3.1 Giới thiệu HTTP 1.3.2 Lịch sử phát triển 1.3.3 Nguyên lý hoạt động HTTP 1.3.4 Uniform Resource Locator (URL) 1.3.5 Giao thức TCP/IP 1.4 Giao thức HTTP 2.0 1.4.1 Giới thiệu HTTP 2.0 1.4.2 Nguyên lí hoạt động 1.5 WebSocket 1.5.1 Giới thiệu Socket 1.5.2 Nguyên lí hoạt động Socket 1.5.3 Phân loại Socket 10 1.5.4 Giới thiệu Web Socket 12 1.5.5 Cấu trúc Web Socket 12 1.5.6 Các thuộc tính WebSocket 13 1.5.7 Các kiện WebSocket 14 1.5.8 Các phương thức WebSocket 15 1.6 MongoDB 16 1.6.1 Giới thiệu MongoDB 16 1.6.2 Một số câu lệnh MongoDB 16 1.6.3 Ưu điểm MongoDB 17 1.6.4 Nhược điểm MongoDB 18 1.6.5 Các ứng dụng cần MongoDB 18 1.7 NodeJs 19 1.7.1 Giới thiệu 19 1.7.2 Những ứng dụng nên viết Nodejs 19 1.7.3 Cài đặt NodeJs 19 1.8 Express 21 1.8.1 Giới thiệu Express 21 1.8.2 Cài đặt Express 21 1.9 Resful API 22 1.9.1 Giới thiệu RestFul API 22 1.9.2 Đặc điểm Resful API 22 1.10 Angurlar Js 23 1.10.1 Giới thiệu Angular 23 1.10.2 Các tính 23 CHƯƠNG 2: KẾT HỢP NODEJS VỚI MONGODB 25 2.1 Cơ sở liệu thời gian thực 25 2.1.1 Giới thiệu sơ liệu thơi gian thực 25 2.1.2 So sánh sở liệu thời gian thực sở liệu truyền thống 26 2.1.3 Một số ứng dụng 26 2.2 Sử dụng MongoDB sở liệu thời gian thực với NodeJS 27 2.2.1 Thư viện SocketIO 27 2.2.2 So sánh MongoDb với Firebase 28 2.3 Sử dụng thư viện SocketIO xây dựng ứng dụng sở liệu thời gian thực 32 2.3.1 Thiết lập cấu hình 32 CHƯƠNG 3: THỬ NGHIỆM HỆ THỐNG 36 3.1 Phát biểu toán 36 3.2 Xác định yêu cầu hệ thống 36 3.2.1 Yêu cầu phi chức 36 3.2.2 Yêu cầu chức năng: 37 3.3 Xác định tác nhân, UC sử dụng biểu đồ UC 37 3.3.1 Các tác nhân 37 3.3.2 Các UseCase sử dụng 37 3.4 Biểu đồ use case 39 3.4.1 Biểu đồ use case tổng quát 39 3.4.2 Biểu đồ Use case đăng nhập 40 3.4.3 Biểu đồ Use case quản lý lái xe 41 3.4.4 Biểu đồ Use case quản lý đầu xe 42 3.4.5 Biểu đồ Use case quản lý mooc xe 43 3.4.6 Biểu đồ use case quản lý tuyến đường 44 3.4.7 Biểu đồ use case quản lý lệnh điều xe 45 3.4.8 Biểu đồ use case quản lý điều khiển xe 46 3.5 Biểu đồ 47 3.5.1 Biểu đồ chức đăng nhập 47 3.5.2 Biểu đồ cho chức thêm lái xe 48 3.5.3 Biểu đồ cho chức sửa lái xe 48 3.5.4 Biểu đồ cho chức xóa lái xe 49 3.5.5 Biểu đồ cho chức thêm tuyến đường 50 3.5.6 Biểu đồ cho chức sửa tuyến đường 50 3.5.7 Biểu đồ cho chức xóa tuyến đường 51 3.5.8 Biểu đồ cho chức thêm đầu xe 51 3.5.9 Biểu đồ cho chức sửa đầu xe 52 3.5.10 Biểu đồ cho chức xóa đầu xe 53 3.5.11 Biểu đồ cho chức thêm mooc xe 53 3.5.12 Biểu đồ cho chức sửa mooc xe 54 3.5.13 Biểu đồ cho chức xóa mooc xe 55 3.5.14 Biểu đồ cho chức thêm lệnh điều xe 55 3.5.15 Biểu đồ cho chức sửa lênh điều xe 56 3.5.16 Biểu đồ cho chức xóa lệnh điều xe 57 3.5.17 Biểu đồ cho chức thêm điều khiển xe 57 3.5.18 Biểu đồ cho chức sửa điều khiển xe 58 3.6 Biểu đồ lớp 60 3.7 Xây dựng sở liệu 60 3.7.1 Bảng “Laixe” 60 3.7.2 Bảng “Dauxe” 60 3.7.2 Bảng “Moocxe” 61 3.7.3 Bảng “Tuyenduong” 61 3.7.4 Bảng “Lenhdieuxe” 61 3.7.4 Bảng “Dieukhienxe” 61 3.8 Giao diện chương trình 62 3.8.1 Giao diện danh sách đầu xe 62 3.8.2 Giao diện danh sách mooc xe 62 3.8.3 Giao diện danh sách lái xe 63 3.8.4 Giao diện danh sách tuyến đường 63 DANH MỤC TỪ VIẾT TẮT Từ viết tắt HTTP URL HTML TCP/IP W3C RFC OSI Từ đầy đủ Diễn giải HTTP giao thức truyền tải siêu văn Đây giao thức tiêu chuẩn cho World Wide Web (www) để truyền tải liệu Hypertext Transfer Protocol dạng văn bản, âm thanh, hình ảnh, video từ Web Server tới trình duyệt web người dùng ngược lại URL địa tài nguyên Uniform Resource Locator web HTML ngôn ngữ đánh dấu thiết kế để tạo nên Hypertext Markup Language trang web World Wide Web Cùng với CSS JavaScript TCP/IP giao thức trao đổi thông tin sử dụng để Transmission Control Protocol/ Internet Protocol truyền tải kết nối thiết bị mạng Internet World Wide Web Consutirum W3C quy chuẩn thiết kế chung nhiều nhà thiết kế web sử dụng thước đo đánh giá mức độ hoàn thiện website Request For Comment RFC tập hợp tài liệu kiến nghị, đề xuất lời bình luận liên quan trực tiếp gián tiếp đến công nghệ, nghi thức mạng INTERNET Open Systems Interconnection OSI thiết kế dựa vào Reference Model nguyên lý tầng cấp, lý giải cách trừu tượng kỹ thuật kết nối truyền thơng máy tính thiết kế giao thức mạng chúng DANH SÁCH CÁC HÌNH Hình 1: Nguyên lý hoạt động HTTP .4 Hình 2: Kiến trúc giao thức TCP/IP so với OSI Hình 3: Sơ đồ hoạt động Socket việc truyền nhận liệu Hình 4: Stream Socket .10 Hình 5: Datagram Socket 11 Hình 6: Sơ đồ hoạt động WebSockets 12 Hình 7: So sánh thời gian chèn liệu MongoDB với SQL 18 Hình 8: Trang chủ NodeJS 20 Hình 9: Chọn file cài đặt 20 Hình 10:Chọn file cài đặt 21 Hình 1: Minh họa kiễn trúc sở liệu thời gian thực 26 Hình 1: Biểu đồ Use Case tổng quát 39 Hình 3: Biểu đồ Use Case đăng nhập 40 Hình 4: Biểu đồ Use Case quản lý xe 41 Hình 5: Biểu đồ Use case quản lý mooc xe .43 Hình 6: Biểu đồ Use case quản lý tuyến đường 44 Hình 7: Biểu đồ Use case quản lý tuyến đường 45 Hình 8: Biểu đồ Use case quản lý điều khiển xe .46 Hình 9: Biểu đồ chức đăng nhập 47 Hình 10: Biểu đồ chức thêm lái xe: 48 Hình 11: Biểu đồ chức sửa lái xe 48 Hình 12: Biểu đồ chức xóa lái xe 49 Hình 13: Biểu đồ chức thêm tuyến đường 50 Hình 14: Biểu đồ chức sửa tuyến đường 50 Hình 15: Biểu đồ chức xóa tuyến đường 51 Hình 16: Biểu đồ chức thêm đầu xe .51 Hình 17: Biểu đồ chức sửa đầu xe 52 Hình 18: Biểu đồ chức xóa đầu xe .53 Hình 19: Biểu đồ chức thêm mooc xe 53 Hình 20: Biểu đồ chức sửa mooc xe 54 Hình 21: Biểu đồ chức xóa mooc xe 55 Hình 22: Biểu đồ chức thêm lệnh điều xe 55 Hình 23: Biểu đồ chức sửa lệnh điều xe .56 Hình 24: Biểu đồ chức xóa lệnh điều xe 57 Hình 25: Biểu đồ chức thêm điều khiển xe 57 Hình 26: Biểu đồ chức sửa điều khiển xe .58 Hình 27: Biểu đồ chức xóa điều khiển xe 59 Hình 28: Biểu đồ sở liệu 60 Hình 29: Giao diện danh sách đầu xe 62 Hình 30: Giao điện danh sách mooc xe .62 Hình 31: Giao diện danh sách lái xe 63 Hình 32: Giao diện dánh sách tuyến đường 63 DANH SÁCH CÁC BẢNG Bảng 1 : Bảng thuộc tính WebSocket 13 Bảng 2: Bảng kiện WebSocket .14 Bảng 3: Bảng phương thức WebSocket 15 Bảng 4: Bảng câu lệnh MongoDB 17 Bảng 1: So sánh thành phần MongoDB với Firebase .31 Bảng 1: Bảng use case đăng nhập .37 Bảng 2: Bảng use case quản lý đầu xe 37 Bảng 3: Bảng use case quản lý mooc xe .37 Bảng 4: Bảng use case quản lý tuyến đường .37 Bảng 5: Bảng use case quản lý lệnh điều xe .38 Bảng 6: Bảng use case quản lý lái xe .38 Bảng 7: Bảng use case quản lý điều khiển xe 38 Bảng 8: Bảng đặc tả use case đăng nhập 40 Bảng 9: Bảng đặc tả use case quản lý lái xe 41 Bảng 10: Biểu đồ Use Case quản lý đầu xe 42 Bảng 11: Bảng đặc tả use case quản lý đầu xe 42 Bảng 12: Bảng đặc tả use case Quản lý mooc xe 43 Bảng 13: Bảng đặc tả use case quản lý tuyến đường 44 Bảng 14: Bảng đặc tả use case Lệnh điều xe 45 Bảng 15: Bảng đặc tả use case lệnh điều khiển xe 46 Bảng 16: Bảng liệu lái xe .60 Bảng 17: Bảng liệu đầu xe 60 Bảng 18: Bảng liệu tuyến đường 61 Bảng 19: Bảng liệu lệnh điều xe 61 Bảng 20: Bảng liệu điều khiển xe 61 GIỚI THIỆU Hiện nay, tốc độ khoa học phát triển nhanh, đặc biệt lĩnh vực Công nghệ Thông tin Các yêu cầu hệ thống phần mềm cần phát triển nhanh, chất lượng tốt, chi phí giá thành giảm, v.v Lựa chọn hệ quản trị sở liệu yếu tố dẫn đến thành công dự án Tuy nhiên loại sở liệu lại có ưu nhược điểm khác nhau, vào tốn để chọn sở liệu phù hợp Để đáp ứng yêu tố nhanh, tức thời hệ thống phần mềm, người ta chọn giải pháp sử dụng sở liệu thời gian thực Nhưng loại sở liệu có chi phí vận hành lớn, nhiều dự án có nguồn kinh phí hạn hẹp Dựa hệ quản trị sở liệu tại, MongoDB hệ quản trị sở liệu mạnh, mã nguồn mở, tương thích với nhiều hệ điểu hành Windows, Ubuntu, CentOS, v.v Kết hợp với nâng cấp engine JavaScript phiên v8, platform NodeJS Google phát triển tạo bước đột phá cho phép tạo nhiều cách cải tiến hiệu hệ thống phần mềm Sự cải thiện tốc độ xử lý truyển tải liệu nhờ nâng cấp lên thành phiên HTTP/2.0 năm 2015 làm cho việc phát triển phần mềm Web ngày hiệu Trên sở công nghệ phát triển hướng sử dụng hệ quản trị sở liệu MongoDB có nhiều ưu điểm Em chọn đề tài “Kết hợp NodeJS với MongoDB cho toán xây dựng hệ quản trị sở liệu thời gian thực.” với mong muốn tìm hiểu thêm cơng nghệ để áp dụng cho tương lai nghề nghiệp Khóa luận có phần trình bày theo trình tự sau: Giới thiệu Chương 1: Kiến thức tảng, chương tổng hợp kiến thức làm sở lý luận cho chương Chương 2: Kết hợp NodeJS với MongoDB, trình bày yếu tố kỹ thuật kết hợp NodeJS với MongoDB để xử lý liệu có tính phản hồi nhanh Chương 3: Thử nghiệm hệ thống, trình bày phần áp dụng kiến thức chương thử nghiệm với toán quản lý vận tải đơn giản Kết luận CHƯƠNG 1: KIẾN THỨC NỀN TẢNG Chương trình bày kiến thức tàng, tổng hợp kiến thức làm sở lý luận cho chương phương pháp tiếp cận để giải đề tài 1.1 Đặt vấn đề Các hệ thống phần mềm đòi hỏi chạy đa tảng, hiệu quả, tương tác thân thiện với người dùng Phần mềm phát triển Web loại ứng dụng đáp ứng yêu cầu khắt khe Tuy nhiên, yếu tố quan trọng anh hướng đến hiệu ứng dụng Web việc trao đổi liệu dựa Internet cụ thể giao thức HTTP xử lý liệu hệ quản trị sở liệu Do khoa học phát triển, hạn chế kể khắc phục Giao thức HTTP nâng cấp thành HTTP 2.0 truyền hai chiều (bidirection), hệ quản trị sở liệu hướng đến xử lý liệu theo thời gian thực, đặc biệt đời cảu hệ quản trị sở liệu NoSQL (Not only SQL) cải thiện tốc độ xử lý liệu đáng kể Trong điển hình hệ quản trị sở liệu MongoDB MongoDB hệ quản trị sở liệu hướng tài liệu Nghĩa liệu không chứa bảng sở liệu quan hệ mà lưu trữ dạng JSON Điều giúp cho việc truy cập xử lý nhanh nhiều so với hệ quản trị sở liệu quan hệ Trong chương này, khóa luận trình bày kiến thức tảng liên quan để làm sở cho nội dung 1.2 Cơ sở liệu hướng tài liệu Cơ sở liệu hướng tài liệu (Document Oriented Database) sở liệu lưu trữ liệu cách tự không theo lược đồ định Mỗi ghi khơng cần phải có cấu trúc cố định, ghi khách có nhiều cột khách Loại liệu cột ghi khác Một cột có nhiều mảng ghi có cấu trúc lồng Dữ liệu đóng gói thành tài liệu, tài liệu lưu dạng JSON, XML, v.v Ví dụ: { “_id”: ObjectId("5fe87df4ccac7508fc2c52a4") “name: “Roanldo” “position”: “striker” } Bob Smith (123) 555-0178 (890) 555-0133 Home 123 Back St. Boys AR 32225 US Khi phát sinh việc chèn liệu, tức thêm trường ta cần bổ sung trường vào đối tượng JSON/XML khơng cố định số cột bảng sở liệu quan hệ Một số hệ quản trị sở liệu hướng tài liệu MongoDB, CouchDB, Elasticsearch, v.v 1.3 Giao thức HTTP 1.3.1 Giới thiệu HTTP Giao thức HTTP giao thức chuẩn sử dụng để trao đổi liệu Internet, giao thức dùng để trao đổi thông tin bên cung cấp dịch vụ (Web server) bên sử dụng dịch vụ (Web client) mơ hình Client/Server Giao thức HTTP giao thức thuộc tầng ứng dụng, nằm cặp giao thức tầng giao vận & tầng mạng TCP/IP 1.3.2 Lịch sử phát triển  Giao thức HTTP chuẩn HTML Tim Berners-Lee đề xuất vào năm năm 1989 CERN tổ chức IETF World Wide Web Consortium (W3C) công nhận công bố hàng loạt phiên RFC (Request for Comments)  Phiên HTTP HTTP v0.9 đưa năm 1991  Vào thập niên 90, David Ragger tăng tính bảo mật, mở rộng thẻ meta-rich decription thêm phương thức khác cung với trường header nhằm mục đích biểu diễn đa dạng loại liệu  Giao thức HTTP từ lúc công bố đến trải qua nhiều phiên 1.x (1.0, 1.1, 1.2,1.3), đến ngày phiên 2.x  HTTP/2 công bố RFC 7540 vào tháng năm 2015 [TL1] 1.3.3 Nguyên lý hoạt động HTTP Hình 1: Nguyên lý hoạt động HTTP Header: Chứa thông tin địa xuất phát gói, địa đích đến thơng tin loại liệu, dung lượng liệu Payload: Chứa gói liệu cần truyền tải Footer: Chứa thông tin dùng để phát chỉnh sửa lỗi trình truyền Các hệ thống sử dụng giao thức HTTP hoạt động theo nguyên lý Client – Server Theo ngun lý thiết bị đóng vai trị làm máy khách (Client) gửi yêu cầu đến máy chủ (Server) chờ đợi phản hồi thông tin từ máy chủ Giao thức HTTP giao thức phi trạng thái (stateless protocol) Hay nói cách khác, yêu cầu (request) khơng biết xảy yêu cầu trước HTTP cho phép tạo yêu cầu gửi nhận kiểu liệu, cho phép xây dựng hệ thống độc lập với liệu truyển 1.3.4 Uniform Resource Locator (URL) Một URL (Uniform Resource Locator) sử dụng để xác định tài nguyên Web Một URL có cấu trúc sau: Protocol://hostname:port/path-and-file-name Trong URL có thành phần: - Protocol: giao thức tầng ứng dụng sử dụng client server - Hostname: tên DNS domain - Port: Cổng TCP để server lắng nghe request từ client - Path-and-file-name: Tên vị trí tài nguyên yêu cầu 3.5.7 Biểu đồ cho chức xóa tuyến đường Hình 14: Biểu đồ chức xóa tuyến đường Mơ tả tóm tắt: - Khách hàng chọn chức xóa tuyến đường Hệ thống thông báo cho người dùng muốn xóa hay khơng Nếu khách hàng đơng ý hệ thống kiểm tra xóa thơng tin Cịn người dùng khơng đồng ý khơng thực xóa 3.5.8 Biểu đồ cho chức thêm đầu xe Hình 15: Biểu đồ chức thêm đầu xe 51 Mơ tả tóm tắt: - Khách hàng chọn chức thêm đầu xe Nếu thông tin hệ thống gửi thông báo thêm thành cơng Cịn sai hệ thống u cầu nhập lại 3.5.9 Biểu đồ cho chức sửa đầu xe Hình 16: Biểu đồ chức sửa đầu xe Mơ tả tóm tắt: - Khách hàng chọn chức sửa đầu xe Nếu thông tin hệ thống gửi thông báo sửa thành công Còn sai hệ thống yêu cầu nhập lại thông tin 52 3.5.10 Biểu đồ cho chức xóa đầu xe Hình 17: Biểu đồ chức xóa đầu xe Mơ tả tóm tắt: - Khách hàng chọn chức xóa đầu xe Hệ thống thơng báo cho người dùng muốn xóa hay khơng Nếu khách hàng đơng ý hệ thống kiểm tra xóa thơng tin Cịn người dùng khơng đồng ý khơng thực xóa 3.5.11 Biểu đồ cho chức thêm mooc xe Hình 18: Biểu đồ chức thêm mooc xe 53 Mơ tả tóm tắt: - Khách hàng chọn chức thêm mooc xe Nếu thông tin hệ thống gửi thông báo sửa thành công Còn sai hệ thống yêu cầu nhập lại thông tin 3.5.12 Biểu đồ cho chức sửa mooc xe Hình 19: Biểu đồ chức sửa mooc xe Mơ tả tóm tắt: - Khách hàng chọn chức sửa tuyến xe Nếu thông tin hệ thống gửi thông báo sửa thành cơng Cịn sai hệ thống u cầu nhập lại thông tin 54 3.5.13 Biểu đồ cho chức xóa mooc xe Hình 20: Biểu đồ chức xóa mooc xe Mơ tả tóm tắt: - Khách hàng chọn chức xóa mooc xe Hệ thống thông báo cho người dùng muốn xóa hay khơng Nếu khách hàng đơng ý hệ thống kiểm tra xóa thơng tin Cịn người dùng khơng đồng ý khơng thực xóa 3.5.14 Biểu đồ cho chức thêm lệnh điều xe Hình 21: Biểu đồ chức thêm lệnh điều xe 55 Mơ tả tóm tắt: - Khách hàng chọn chức thêm lệnh điều xe Nếu thông tin hệ thống gửi thông báo sửa thành cơng Cịn sai hệ thống yêu cầu nhập lại thông tin 3.5.15 Biểu đồ cho chức sửa lênh điều xe Hình 22: Biểu đồ chức sửa lệnh điều xe Mơ tả tóm tắt: - Khách hàng chọn chức sửa lệnh xe Nếu thông tin hệ thống gửi thơng báo sửa thành cơng Cịn sai hệ thống yêu cầu nhập lại thông tin 56 3.5.16 Biểu đồ cho chức xóa lệnh điều xe Hình 23: Biểu đồ chức xóa lệnh điều xe Mơ tả tóm tắt: - Khách hàng chọn chức xóa lệnh xe Hệ thống thơng báo cho người dùng muốn xóa hay khơng Nếu khách hàng đơng ý hệ thống kiểm tra xóa thơng tin Cịn người dùng khơng đồng ý khơng thực xóa 3.5.17 Biểu đồ cho chức thêm điều khiển xe Hình 24: Biểu đồ chức thêm điều khiển xe 57 Mơ tả tóm tắt: - Khách hàng chọn chức thêm điều khiển xe Nếu thông tin hệ thống gửi thông báo sửa thành cơng Cịn sai hệ thống u cầu nhập lại thông tin 3.5.18 Biểu đồ cho chức sửa điều khiển xe Hình 25: Biểu đồ chức sửa điều khiển xe Mô tả tóm tắt: - Khách hàng chọn chức sửa điều khiển xe Nếu thông tin hệ thống gửi thơng báo sửa thành cơng Cịn sai hệ thống yêu cầu nhập lại thông tin 58 3.5.19 Biểu đồ cho chức xóa điều khiển xe Hình 26: Biểu đồ chức xóa điều khiển xe Mơ tả tóm tắt: - Khách hàng chọn chức xóa điều khiển xe Hệ thống thơng báo cho người dùng muốn xóa hay khơng Nếu khách hàng đơng ý hệ thống kiểm tra xóa thơng tin Cịn người dùng khơng đồng ý khơng thực xóa 59 3.6 Biểu đồ lớp Điều khiển xe -ObjectId -IDLaixe: ObjectId -IDDauxe: ObjectId -IDMooc: ObjectId +Thêm lệnh điều xe () +Sửa lện điều xe () +Xóa lện điều xe () Đầu xe Lệnh điều xe Mooc xe -ObjectId -Lop: String -Trongtai: String - Trongluong: String +Thêm mooc xe () +Sửa mooc xe () +Xóa đầu xe () -ObjectId -IDLaixe: ObjectId -IDDauxe: ObjectId -IDTuyenduong: ObjectId +Thêm lệnh điều xe () +Sửa lện điều xe () +Xóa lện điều xe () Tuyến đường -ObjectId -Bienkiemsoat: String -Loaixe: String -Congsuatmay: String -Xuatxu: String -Lop: String -Trongtai: String - Trongluong: String -Binhdau: String +Thêm đầu xe () +Sửa đầu xe () +Xóa đầu xe () Nhân viên lái xe -ObjectId -Tenlaixe: String -Tuoi: Number -Quequan: String +Thêm tuyến đường() +Sửa tuyến đường() +Xóa tuyến đường() -ObjectId -Điemdi: String -Diemden: String -Nhienlieu: -Tienan: -Tienlop -Tiencuoc +Thêm tuyến đường() +Sửa tuyến đường() +Xóa tuyến đường() Hình 27: Biểu đồ sở liệu 3.7 Xây dựng sở liệu 3.7.1 Bảng “Laixe” STT Tên thuộc tính ObjectId Kiểu liệu ObjecId Tenlaixe String Tuoi Number Quequan String Bảng 16: Bảng liệu lái xe Mô tả Mã nhân viên lái xe sinh tự động Tên nhân viên lái xe Tuổi nhân viên lái xe Quê quản nhân viên lái xe 3.7.2 Bảng “Dauxe” STT Tên thuộc tính ObjectId Kiểu liệu ObjecId Bienkiemsoat Loaixe Congxuatmay Xuatxu Lop Trongtai Trongluong Binhdau String String String String String String String String Bảng 17: Bảng liệu đầu xe Mô tả Mã đầu xe xe sinh tự động Biển kiểm sốt Loại xe Cơng suất máy Xuất xử Số lốp Trọng tải Trọng lượng String 60 3.7.2 Bảng “Moocxe” STT Tên thuộc tính ObjectId Kiểu liệu ObjecId Taitrong Trongluong Lop String String String Mô tả Mã mooc xe sinh tự động Tải Trọng lượng Số lốp Bảng 1: Bảng liệu mooc xe 3.7.3 Bảng “Tuyenduong” STT Tên thuộc tính ObjectId Kiểu liệu ObjecId Diemdi Diemden Nhienlieu Tienan Tienlop Tiencuoc String String String String String String Bảng 18: Bảng liệu tuyến đường Mô tả Mã mooc xe sinh tự động Điểm Điểm đến Nhiên liệu Tiền ăn Tiền lốp Tiền cước 3.7.4 Bảng “Lenhdieuxe” STT Tên thuộc tính ObjectId Kiểu liệu ObjecId Nguoidieuxe IDDauxe String ObjecId IDLaixe ObjecId IDTuyenduong ObjecId Bảng 19: Bảng liệu lệnh điều xe Mô tả Mã lệnh điều xe sinh tự động Tên người điều xe Là ObjectID bảng Dauxe Là ObjectID bảng Laixe Là ObjectID bảng Tuyenduong 3.7.4 Bảng “Dieukhienxe” STT Tên thuộc tính ObjectId Kiểu liệu ObjecId IDMocxe ObjecId IDDauxe ObjecId IDLaixe ObjecId Mô tả Mã lệnh điều xe sinh tự động Mã bảng mooc xe Mã bảng đầu xe Là mã bảng Laixe Bảng 20: Bảng liệu điều khiển xe 61 3.8 Giao diện chương trình 3.8.1 Giao diện danh sách đầu xe Hình 28: Giao diện danh sách đầu xe 3.8.2 Giao diện danh sách mooc xe Hình 29: Giao điện danh sách mooc xe 62 3.8.3 Giao diện danh sách lái xe Hình 30: Giao diện danh sách lái xe 3.8.4 Giao diện danh sách tuyến đường Hình 31: Giao diện dánh sách tuyến đường 63 KẾT LUẬN Sau 03 tháng thực nghiên cứu đề tài, hướng dẫn tận tình thầy Tiến sỹ Nguyễn Trịnh Đơng, đồ án em đạt kết sau: Kết đạt  Tìm hiều hiểu sở liệu MongoDB  Nắm nguyên lý hoạt động WebSocket  Tìm kiểu, nắm bắt kĩ thuật dụng NodeJS Socket.IO kết nối với sở liệu MongoDB để tạo cách thức xử lí liệu theo thời gian thực  Xây dựng website với chức cập nhật, xóa, sửa với chức phân tích Mặt hạn chế Trong thời gian qua, em cố gắng để tìm hiểu thực đề tài Tuy nhiên với kinh nghiệm thời gian hạn chế nên khơng thể tránh khỏi thiếu sót đồ án Cụ thể:  Phần giao diện cịn chưa đẹp mắt  Vì cơng nghệ mới, thời gian trình độ cịn hạn chế hệ thống xây dựng đồ án dừng mức thử nghiệm Do muốn áp dụng vào thực tiến phải cần có thời gian cơng sức để hồn thiện  Mới dừng lại nghiệp vụ như: quản lý đầu xe, tuyến đường, mooc xe… Hướng phát triển  Xây dựng phần mềm quản lý toàn diện bao gồm việc bảo trì, giám sát xe, giám sát nhiên liệu, quản lý tài xế để đảm bảo an toàn cho tài xế xe, giúp làm giảm đến mức tối thiểu rủi ro đầu tư trình vận hành xe  Cung cấp cho nhà quản lý thông tin cốt yếu việc bảo trì xe can hiệu kinh tế: tổng số nhiên liệu sử dụng, số km đi, mức dầu, mức nước, doanh thu xe, chuyến, theo mốc thời gian 64 TÀI LIỆU THAM KHẢO [1] Nguyễn Văn Vỵ “Phân tích thiết kế hệ thống thông tin đại theo hướng cấu trúc & hương đối tượng” [2] https://nodejs.org/en/ [3] https://morioh.com/p/c466eab81513 [4] https://expressjs.com/ [5] https://mongoosejs.com/ 65 ... kiễn trúc sở liệu thời gian thực 2.1.2 So sánh sở liệu thời gian thực sở liệu truyền thống Sự khác biệt sở liệu truyền thống sở liệu thời gian thực Cơ sở liệu thời gian thực thực chất sở liệu truyền... thiệu sở liệu thời gian thực Trình bày kĩ thuật kết hợp NodeJs với MongoDB thành sở liệu thời gian thực trình bay phần 2.1 Cơ sở liệu thời gian thực 2.1.1 Giới thiệu sơ liệu thơi gian thực Trong thời. .. 23 CHƯƠNG 2: KẾT HỢP NODEJS VỚI MONGODB 25 2.1 Cơ sở liệu thời gian thực 25 2.1.1 Giới thiệu sơ liệu thơi gian thực 25 2.1.2 So sánh sở liệu thời gian thực sở liệu truyền

Ngày đăng: 09/08/2021, 11:12

Hình ảnh liên quan

Hình 1. 2: Kiến trúc giao thức TCP/IP so với OSI - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 1..

2: Kiến trúc giao thức TCP/IP so với OSI Xem tại trang 11 của tài liệu.
Huffman code cho phép các giá trị được nén trước khi gửi đi, và bảng chỉ - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

uffman.

code cho phép các giá trị được nén trước khi gửi đi, và bảng chỉ Xem tại trang 15 của tài liệu.
Hình 1. 6: Sơ đồ hoạt động của WebSockets - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 1..

6: Sơ đồ hoạt động của WebSockets Xem tại trang 18 của tài liệu.
Bảng 1. 1: Bảng thuộc tính của WebSocket - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Bảng 1..

1: Bảng thuộc tính của WebSocket Xem tại trang 19 của tài liệu.
Bảng 1. 2: Bảng các sự kiện WebSocket - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Bảng 1..

2: Bảng các sự kiện WebSocket Xem tại trang 20 của tài liệu.
Tạo bảng CREATE TABLE students - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

o.

bảng CREATE TABLE students Xem tại trang 23 của tài liệu.
Hình 1. 7: So sánh thời gian chèn dữ liệu của MongoDB với SQL - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 1..

7: So sánh thời gian chèn dữ liệu của MongoDB với SQL Xem tại trang 24 của tài liệu.
Hình 1. 9: Chọn file cài đặt - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 1..

9: Chọn file cài đặt Xem tại trang 26 của tài liệu.
Hình 1. 8: Trang chủ NodeJS - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 1..

8: Trang chủ NodeJS Xem tại trang 26 của tài liệu.
Hình 1. 10:Chọn file cài đặt - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 1..

10:Chọn file cài đặt Xem tại trang 27 của tài liệu.
Hình 2. 1: Minh họa kiễn trúc cơ sở dữ liệu thời gian thực - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 2..

1: Minh họa kiễn trúc cơ sở dữ liệu thời gian thực Xem tại trang 32 của tài liệu.
Bảng 2. 1: So sánh thành phần MongoDB với Firebase - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Bảng 2..

1: So sánh thành phần MongoDB với Firebase Xem tại trang 37 của tài liệu.
Hình 3. 1: Biểu đồ UseCase tổng quát - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

1: Biểu đồ UseCase tổng quát Xem tại trang 45 của tài liệu.
Hình 3. 3: Biểu đồ UseCase quản lý xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

3: Biểu đồ UseCase quản lý xe Xem tại trang 47 của tài liệu.
Bảng 3. 10: Biểu đồ UseCase quản lý đầu xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Bảng 3..

10: Biểu đồ UseCase quản lý đầu xe Xem tại trang 48 của tài liệu.
Hình 3. 4: Biểu đồ Usecase quản lý mooc xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

4: Biểu đồ Usecase quản lý mooc xe Xem tại trang 49 của tài liệu.
Hình 3. 6: Biểu đồ Usecase quản lý tuyến đường - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

6: Biểu đồ Usecase quản lý tuyến đường Xem tại trang 51 của tài liệu.
Hình 3. 7: Biểu đồ Usecase quản lý điều khiển xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

7: Biểu đồ Usecase quản lý điều khiển xe Xem tại trang 52 của tài liệu.
Hình 3. 8: Biểu đồ tuần tự chức năng đăng nhập - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

8: Biểu đồ tuần tự chức năng đăng nhập Xem tại trang 53 của tài liệu.
Hình 3. 10: Biểu đồ tuần tự chức năng sửa lái xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

10: Biểu đồ tuần tự chức năng sửa lái xe Xem tại trang 54 của tài liệu.
Hình 3. 11: Biểu đồ tuần tự chức năng xóa lái xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

11: Biểu đồ tuần tự chức năng xóa lái xe Xem tại trang 55 của tài liệu.
Hình 3. 13: Biểu đồ tuần tự chức năng sửa tuyến đường - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

13: Biểu đồ tuần tự chức năng sửa tuyến đường Xem tại trang 56 của tài liệu.
Hình 3. 15: Biểu đồ tuần tự chức năng thêm đầu xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

15: Biểu đồ tuần tự chức năng thêm đầu xe Xem tại trang 57 của tài liệu.
Hình 3. 18: Biểu đồ tuần tự chức năng thêm mooc xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

18: Biểu đồ tuần tự chức năng thêm mooc xe Xem tại trang 59 của tài liệu.
Hình 3. 21: Biểu đồ tuần tự chức năng thêm lệnh điều xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

21: Biểu đồ tuần tự chức năng thêm lệnh điều xe Xem tại trang 61 của tài liệu.
Hình 3. 22: Biểu đồ tuần tự chức năng sửa lệnh điều xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

22: Biểu đồ tuần tự chức năng sửa lệnh điều xe Xem tại trang 62 của tài liệu.
Hình 3. 24: Biểu đồ tuần tự chức năng thêm điều khiển xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

24: Biểu đồ tuần tự chức năng thêm điều khiển xe Xem tại trang 63 của tài liệu.
Hình 3. 26: Biểu đồ tuần tự chức năng xóa điều khiển xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

26: Biểu đồ tuần tự chức năng xóa điều khiển xe Xem tại trang 65 của tài liệu.
Hình 3. 28: Giao diện danh sách đầu xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

28: Giao diện danh sách đầu xe Xem tại trang 68 của tài liệu.
Hình 3. 29: Giao điện danh sách mooc xe - Đồ án Kết hợp NodeJS với MongoDB cho bài toán xây dựng hệ quản trị cơ sở dữ liệu thời gian thực

Hình 3..

29: Giao điện danh sách mooc xe Xem tại trang 68 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan