Please use this identifier to cite or link to this item: https://dspace.ctu.edu.vn/jspui/handle/123456789/109278
Title: PHÁT TRIỂN WEBSITE BÁN THỨC ĂN MANG ĐI DÙNG KIẾN TRÚC MICROSERVICES BẰNG REACTJS VÀ JAVA SPRING BOOT
Other Titles: DEVELOPING A TAKEAWAY FOOD SELLING WEBSITE USING MICROSERVICES ARCHITECTURE WITH REACTJS AND JAVA SPRING BOOT
Authors: Nguyễn, Công Danh
Trần, Trung Kiên
Keywords: KỸ THUẬT PHẦN MỀM
Issue Date: 2024
Publisher: Trường Đại Học Cần Thơ
Abstract: Bối cảnh: Với sự phát triển nhanh chóng của ngành công nghệ phần mềm và nhu cầu đặt thức ăn của mọi người ngày càng tăng, các website bán thức ăn phải đáp ứng được số lượng người truy cập lớn và phải có khả năng dễ dàng nâng cấp và bảo trì nhanh chóng. Các ứng dụng đặt thức ăn trước đây thường được phát triển dựa trên kiến trúc Monolithic đã bắt không còn đáp ứng được các yêu cầu của người dùng, thường xảy ra tình trạng gián đoạn khi lượng truy cập đồng thời lớn, khó khăn trong việc bảo trì, chỉnh sửa và thêm mới các tính năng. Để giải quyết vấn đề này, kiến trúc Microservices được ra đời, giúp chia ứng dụng thành các dịch vụ nhỏ, độc lập, có khả năng tích hợp với nhiều hệ thống khác, dễ dàng triển khai và mở rộng khi cần thiết. Mục tiêu: Xuất phát từ những ý nghĩa thực tiễn như vậy, chúng tôi đã thực hiện đề tài luận văn “Phát triển website bán thức ăn mang đi dùng kiến trúc Microservices bằng ReactJS và Java Spring Boot” nhằm tìm hiểu và áp dụng kiến trúc Microservices trong việc xây dựng, phát triển một website cụ thể. Qua đó, đề tài không chỉ tập trung vào việc xây dựng hệ thống mà còn nhằm mục đích nghiên cứu cách tối ưu hóa khả năng mở rộng và tính linh hoạt trong việc phát triển các hệ thống phần mềm. Ngoài ra, việc ứng dụng các công nghệ hiện đại như Kubernetes, Docker, Kafka và Helm trong triển khai và vận hành cũng nhằm mang đến những góc nhìn toàn diện về việc áp dụng công nghệ mới vào thực tiễn. Điều đó nhằm đưa ra các phân tích, đánh giá và rút ra các ưu nhược điểm của kiến trúc Microservices. Phương pháp: Website sẽ được phát triển dựa trên kiến trúc Microservice, với các service chính được viết bằng ngôn ngữ lập trình Java sử dụng Spring Boot và hệ sinh thái của Spring Framework. Cơ sở dữ liệu MySQL sẽ được sử dụng để lưu trữ dữ liệu cho các service, trong khi Apache Kafka sẽ được tích hợp để xử lý thông điệp phân tán và mở rộng, giúp giải quyết vấn đề giao tiếp giữa các service. Các service sẽ được đóng gói thành các Image trong Docker và sẽ được lưu trữ trong Docker Hub. Để triển khai các service sẽ sử dụng Helm để tạo các chart và các file cấu hình biến môi trường cần thiết cho các service, sau đó sẽ triển khai các service chạy độc lập bên trong một Kubernetes Cluster là Minikube. Để quản lý định tuyến, và bảo mật các yêu cầu Http đến các dịch vụ Microservices phía sau sẽ triển khai một Kubernetes Ingress (Nginx) hoạt động như một API Gateway giúp điều hướng yêu cầu đến từng service cụ thể. Giao diện của website sẽ được xây dựng bằng thư viện ReactJS. Kết quả: Website bán thức ăn mang đi đã được xây dựng trên kiến trúc Microservices, với các chức năng cơ bản như đặt món, thanh toán, và quản lý đơn hàng đã hoàn thiện. Các service đã được đóng gói và triển khai thành công, hoạt động ổn định và giao tiếp với nhau hiệu quả. Kết luận: Dựa trên kết quả đạt được, trang web của chúng tôi đã đáp ứng được mục tiêu đặt ra, xây dựng được một trang web trên kiến trúc Microservices tích hợp được nhiều công nghệ mới và có các chức năng cơ bản của một trang web bán thức ăn.
Description: 153 Tr
URI: https://dspace.ctu.edu.vn/jspui/handle/123456789/109278
Appears in Collections:Trường Công nghệ Thông tin & Truyền thông

Files in This Item:
File Description SizeFormat 
_file_
  Restricted Access
5.63 MBAdobe PDF
Your IP: 3.143.7.53


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.