Hình 4.17. Kiến trúc hệ thống
●React JS: Thư viện dùng để xây dụng giao diện cho ứng dụng. React cung cấp cho lập trình viên khả năng gói các thành phần giao diện thành các component để dễ dàng tái sử dụng cũng như giúp quá trình sửa lỗi được nhanh hơn.
36
●Express: Là một framework backend cho Node.js. Hỗ trợ tính năng điều hướng các request của client một cách đơn giản và cũng cung cấp một middleware có vai trò xử lý trả response cho các request đó.
●Mongoose: Một thư viện cho MongoDB và Node.js. Có khả năng quản lý các mối quan hệ giữa dữ liệu, cung cấp khả năng diễn tả dữ liệu trong database MongoDB dưới dạng schema.
●MongoDB: Đây là database của hệ thống, là một database No SQL lưu trữ các dữ liệu dưới dạng JSON document. MongoDB có hiệu suất tốt, dễ sử dụng và khả năng mở rộng cao, do vậy, MongoDB thường được sử dụng trong các ứng dụng có lượng dữ liệu lớn.
●Google Drive API: REST API giúp lập trình viên sử dụng dịch vụ của Google Drive trong ứng dụng của mình, cung cấp cho các ứng dụng này một nguồn khác để lưu trữ data, giúp giảm bớt gánh nặng cho database. Với Google Drive API, một lập trình viên có thể upload file cũng như download file từ Google Drive, tìm kiếm file, folder và trả về thông tin của những file và folder đó.
●OAuth: Viết tắt của Open với Authentication hoặc Authorization, là một phương thức, một tiêu chuẩn chứng thực người dùng được sử dụng rộng rãi.
●Google Drive: dịch vụ lưu trữ file trên cloud của Google. Cung cấp cho người dùng không gian lưu trữ riêng gọi là My Drive cũng như lựa chọn để chia sẻ file trên các thư mục chung gọi là Shared Drives.
37