(TIỂU LUẬN) hệ PHÂN tán đề tài xây DỰNG hệ THỐNG ATM

13 4 0
(TIỂU LUẬN) hệ PHÂN tán đề tài xây DỰNG hệ THỐNG ATM

Đ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

ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG HỆ PHÂN TÁN Đề tài: XÂY DỰNG HỆ THỐNG ATM Nhóm sinh viên thực hiện: Giảng viên hướng dẫn: Hà Nội, tháng 07 năm 2022 Lời nói đầu Lời , nhóm em xin gửi lời cảm ơn đến thầy Đặng Tuấn Linh , thầy nhiệt tình giảng dạy lớp , hỗ trợ thông tin cần thiết giải đáp thắc mắc cho nhóm bạn thực đề tài Thông qua giảng lớp môn học thầy , thành viên nhóm em tiếp thu nhiều kiến thức hữu ích liên quan Qua giúp chúng em hiểu nắm bắt quy trình làm Đề tài “Xây dựng hệ thống ATM” hoàn thành kết trình nghiên cứu nghiêm túc thành viên nhóm q trình học tập tiếp thu kiến thức hướng dẫn tận tình giảng viên hướng dẫn tài liệu giảng viên hướng dẫn chia sẻ qua kênh giao tiếp trong suốt trình thời gian giảng dạy học kỳ Với kiến thức học từ môn Thiết kế xây dựng phần mềm, toán em giải vấn đề thiết kế xây dựng hệ thống ATM Tuy nhiên điều kiện thời gian kiến thức hạn chế nên khơng tránh khỏi thiếu sót, mong góp ý nhiều thầy Em xin chân thành cảm ơn! Chương Khảo sát hệ thống Lí chọn đề tài : Hiện nay, hệ thống ATM giao dịch ngân hàng giải pháp quản lý trao đổi tài phổ biến với số lượng người dùng lớn, đặt tốn hóc búa cho chế bảo mật, độ chịu tải tính tồn vẹn thơng tin Qua thăm dị chức đó, chúng em áp dụng kiến thức học thực tiễn hệ thống ATM Chúng em xây dựng mô hệ phân tán & microservices cho hệ thống giao dịch ATM 1.1 Mô tả hệ thống 1.1.1 Nhiệm vụ Hệ thống rút tiền ATM với tính cho người dùng sau: Kiểm tra thông tin & số dư Rút, chuyển tiền Đổi mã PIN Khố thẻ Gửi thơng báo Email 1.1.2 Hệ thống Hệ thống Log lỗi, message từ Queue Worker gửi Email từ Queue Phân giải hệ thống tránh tắc nghẽn 1.2 Phân tích hệ thống Qua phân tích chức năng, nhóm chúng em tiến hành thiết kế hệ thống với Service chính: - Email Service: Dùng để gửi email sau người dùng biến động số dư - Account Service: Dùng để xác thực người dùng quản lý phiên đăng nhập - Bank Service: Dùng để xử lý vấn đề tiền tài khoản người dùng - Log Service: Dùng để thông báo, ghi lại ghi nhằm soát lỗi hệ thống microservices Cơ sở liệu sử dụng: MongoDB (Thực để xây dựng hệ thống bank tối ưu cần phải dùng Oracle, nhiên phạm vi môn học, chúng em sử dụng mongoDB để dễ dàng demo triển khai) Chương Thiết kệ hệ thống 2.1 Account Service Service chủ yếu phục vụ việc xác thực người dùng tạo phiên với api là: - [POST: /auth]: Login hệ thống Request Body: (application/json) { "stk":"4012555541213654", "password":"rsapass" } Mơ tả Body Tên thuộc tính Stk password Mô tả response { "code": 200, "message": "Dang nhap cong!", "data": { "name": "HOANG QUOC BAO", "balance": 997000000, "accessToken": "1wJ07Q0PgnJf3wKUFOXrIgu65ddsp5ZA9YqbfMqz/i0=" } } - [Get: /checkUser]: - Mô tả params: Tên params stk accessToken Mô tả response { "code": 200, "message": "Kiem tra cong!", "data": { "name": "HOANG QUOC BAO" } } - [Get: /checkAccessToken]: Mô tả params: Tên params accessToken Mô tả response { "code": 200, "message": "Dang nhap cong!", "data": { "name": "HOANG QUOC BAO", "balance": 997000000 } - } [Get: /logOut]: Mô tả params: Tên params accessToken Mô tả Access Token người dùng Mô tả response { "code": 200, "message": "Dang xuat cong!", "data":null } 2.2 Email Service Email service đọc thông báo gửi email từ Email Queue gửi email theo yêu cầu 2.3 Bank Service - [POST: /withdraw]: Rút tiền /withdraw (Bank Service) Email Queue /checkAccessToken (Account Service) Log Queue Mô tả API body: { "stk": "4012555541213654", "accessToken":"y1UqnLTjhQMpth4ctf2FddQCQXCjdbj2ARZ9Z86eg5I=" , "money":1000000 } Mô tả body: Tên params accessToken stk money Response: { "code": 200, "message": "Rut tien cong!", "data": null } - [POST: /sendMoney]: Chuyển tiền /sendMoney (Bank Service) /checkAccessToken (Account Service) /checkUser (Account Service) Email Queue Mô tả body: { "stk": "4012555541213654", "stkNhan": "40125555412136121", "accessToken":"c1x9tLlzD64R3szPUAD9MAqEXC18iYepMarAc6mgiRw =", "money":1000000 } Tên params accessToken stk money stkNhan Mô tả response: { "code": 200, "message": "Chuyen tien cong!", "data": null } 2.4 Log Service: Log Service đọc message log từ queue thông báo lên tảng log ELK,… Chương Triển khai hệ thống 3.1.1 Triển khai hệ thống Hệ thống triển khai backend với linux/docker, người dùng dùng WindowApp thơng qua Net Framework Màn hình sau Login Màn hình chuyển tiền 3.2 Tính mở rộng & nhân - Các Service mở rộng service Log Email service, cần nhân worker Service tự đọc message Queue làm việc - Các Service giao tiếp Rest cần xây dựng hệ CSDL phân tán với tính đồng cao để đồng CSDL phân tán liệu vào server khác Khi CSDL thay đổi đẩy luồng queue thơng báo thay đổi cho hệ server cập nhật liệu, thời gian cập nhật liệu người dùng khơng thể tiến hành giao dịch số tiền Chết 3.3 Tính chịu lỗi Khả chịu lỗi đặc điểm thiết yếu kiến trúc microservice Lý đằng sau điều rõ ràng đơn giản: Sau điểm tích hợp hệ thống chúng tơi đạt đến số định, lỗi xảy hàng ngày Các lý đơn giản thống kê Như tơi trình bày, khơng thể bất chấp định luật tốn học Đó lý cần hiểu động thất bại từ góc độ cao Cần phải đưa định chiến lược cách hiệu Nếu khơng có định này, đạt mức độ chịu lỗi mà hướng tới 3.4 Kiến trúc hệ thống & giao tiếp, trao đổi thông tin Hệ thống sử dụng kiến trúc Microservice giao tiếp với thơng qua message Queue RestAPI 3.5 Đồng hố Khi triển khai hệ thống phân tán, việc phải đồng hố liệu quan trọng, ví dụ ATM kết nối với máy chủ A với CSDL A, ATM B lại kết nối với CSDL B, Client rút tiền máy chủ A không đồng CSDL B giữ nguyên số dư Vì cần có tính đồng hệ thống phân tán Ở chúng em đẩy qua message Queue khân bệ thống máy chủ ... dụng kiến thức học thực tiễn hệ thống ATM Chúng em xây dựng mô hệ phân tán & microservices cho hệ thống giao dịch ATM 1.1 Mô tả hệ thống 1.1.1 Nhiệm vụ Hệ thống rút tiền ATM với tính cho người dùng... 1.1.2 Hệ thống Hệ thống Log lỗi, message từ Queue Worker gửi Email từ Queue Phân giải hệ thống tránh tắc nghẽn 1.2 Phân tích hệ thống Qua phân tích chức năng, nhóm chúng em tiến hành thiết kế hệ thống. .. bạn thực đề tài Thông qua giảng lớp môn học thầy , thành viên nhóm em tiếp thu nhiều kiến thức hữu ích liên quan Qua giúp chúng em hiểu nắm bắt quy trình làm Đề tài ? ?Xây dựng hệ thống ATM? ?? hoàn

Ngày đăng: 11/12/2022, 04:34

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

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

Tài liệu liên quan