Tôi đang thiết kế một ứng dụng dựa trên kiến trúc microservice,
Trong ứng dụng này, tôi sẽ cần Auth microservice,
Ngoài ra tôi sẽ cần lưu trữ thêm một số thông tin Người dùng như, có lẽ, nhiều địa chỉ, ảnh đại diện, v.v.
Điều này dẫn đến ý tưởng có hai dịch vụ siêu nhỏ - một cho Auth và một dịch vụ khác, Người dùng, có thể lưu trữ thông tin bổ sung của Người dùng,
Cho đến nay, tôi có những ý tưởng sau:
Cho phép dịch vụ xác thực cũng là một máy chủ tài nguyên chứa thông tin Người dùng bao gồm địa chỉ bổ sung, có thể là hình đại diện, v.v ... Đây là một giải pháp tiện lợi vì cho phép mọi thứ liên quan đến Người dùng ở một nơi và giảm độ phức tạp cho các hoạt động như đăng ký mới Người dùng, xóa người dùng. Tuy nhiên, giải pháp này dường như mâu thuẫn với khái niệm microservice, nhưng đối với tôi giải pháp này là hấp dẫn nhất
Có hai dịch vụ siêu nhỏ khác nhau - Auth và Người dùng. Auth sẽ chỉ chịu trách nhiệm xử lý các mã thông báo và sẽ không lưu trữ bất kỳ dữ liệu nào liên quan đến Người dùng. Vì vậy, khi nhận được yêu cầu mã thông báo, dịch vụ Auth gọi Người dùng để nhận dữ liệu Người dùng và đưa ra quyết định
Có hai dịch vụ siêu nhỏ khác nhau - Auth và Người dùng. Auth sẽ chịu trách nhiệm xử lý các mã thông báo và cũng lưu trữ một phần thông tin người dùng liên quan đến Xác thực (có thể là mật khẩu, vai trò). Dịch vụ người dùng sẽ chứa tất cả các thông tin khác như địa chỉ bổ sung, hình đại diện, v.v ... Cách tiếp cận này đối với tôi có vẻ quá phức tạp vì nó yêu cầu xóa phức tạp Người dùng / tạo hoạt động Người dùng mới
Bây giờ, tôi sẽ cần chọn một trong những giải pháp này nhưng tôi đã mất và không chắc chắn giải pháp nào trong số đó là đúng,
Sẽ đánh giá cao bất kỳ lời khuyên liên quan đến điều này,
Cảm ơn