mình đang làm bạn nhé, trao đổi vs mìnhchủ thớt làm xong chưa, em xin tí kinh nghiệm với, em đang làm project với tech như của bác
cảm ơn bạn, mình làm gần xong rùi bạn ạ.đã muốn làm micro service thì buộc phải có 1 con gateway, con gateway sẽ đảm nhận việc verify thông qua token, nếu pass thì gateway sẽ trỏ request đến service mong muốn. Các micro service này thì ko cần verify nữa nên có thể bỏ qua luôn bước config security
Cho mình hỏi bên Laravel hay NestJS có open source nào về cái này không nhỉ?đã muốn làm micro service thì buộc phải có 1 con gateway, con gateway sẽ đảm nhận việc verify thông qua token, nếu pass thì gateway sẽ trỏ request đến service mong muốn. Các micro service này thì ko cần verify nữa nên có thể bỏ qua luôn bước config security
Còn tùy thím thiết kế bên trong thế nào nữa chứ, nếu mà thiết kế các service dạng RBAC thì trong service vẫn cần check lại authorization chứ không có thể tin tưởng toàn bộ request từ phía gateway fwd vào à ?đã muốn làm micro service thì buộc phải có 1 con gateway, con gateway sẽ đảm nhận việc verify thông qua token, nếu pass thì gateway sẽ trỏ request đến service mong muốn. Các micro service này thì ko cần verify nữa nên có thể bỏ qua luôn bước config security
Là software bên ngoài thôi fen, ví dụ Kong API gatewayCho mình hỏi bên Laravel hay NestJS có open source nào về cái này không nhỉ?
cái này còn phụ thuộc vào hệ thống nữa mà,cứ đơn giản là tin tưởng từ từ thằng gateway cho nhanhCòn tùy thím thiết kế bên trong thế nào nữa chứ, nếu mà thiết kế các service dạng RBAC thì trong service vẫn cần check lại authorization chứ không có thể tin tưởng toàn bộ request từ phía gateway fwd vào à ?
thì tuỳ thiết kế mà bác.Còn tùy thím thiết kế bên trong thế nào nữa chứ, nếu mà thiết kế các service dạng RBAC thì trong service vẫn cần check lại authorization chứ không có thể tin tưởng toàn bộ request từ phía gateway fwd vào à ?
chuẩn chỉnh ra phải làm ở cả 2. Vì thằng gw ko biết tenant nào hếtAuthorization các bác chia tài nguyên trả về implement trong service hay chia từ gateway nhỉ ? Ví dụ tài nguyên trong db user A chỉ lấy được của tenant A ko dc lấy tenant B
về cơ bản ý tưởng microservice là đúng rồi. Còn cụ thể hơn thì giờ có nhiều công cụ để mình quản lý đống micro đó. Và bài viết này cũng quên chưa đề cập đến vấn đề rollback tài nguyên khi bị lỗi. và cũng tự nhiên đề cập đến 1 con service riêng là ListOrderedProducts thật sự rất dở, ko ai làm như thế cảthực sự ở cty các bác triển khai microservice như nào vậy
có phải triển khai kiểu như trong này hướng dẫn k các bác![]()
Ý tưởng cơ bản về Microservices
I. Microservices là gì mà khiến giới giang hồ điên đảo vì nó suốt nhiều năm???viblo.asia
hay có cách khác hay hơn
có blog nước ngoài nào viết chuẩn như bác nói k cho e xin vớivề cơ bản ý tưởng microservice là đúng rồi. Còn cụ thể hơn thì giờ có nhiều công cụ để mình quản lý đống micro đó. Và bài viết này cũng quên chưa đề cập đến vấn đề rollback tài nguyên khi bị lỗi. và cũng tự nhiên đề cập đến 1 con service riêng là ListOrderedProducts thật sự rất dở, ko ai làm như thế cả
trong token bạn đính kèm tenant là được mà bác.chuẩn chỉnh ra phải làm ở cả 2. Vì thằng gw ko biết tenant nào hết
E thấy thg keycloak cx có mục phân chia permission cho resource. Liệu có thể để thg keycloak làm phần này thay vì tự implement k bácchuẩn chỉnh ra phải làm ở cả 2. Vì thằng gw ko biết tenant nào hết
trước mình làm viettel thì sẽ có 2 con gateway chính, 1 con chuyên để call/bị call từ third party, còn 1 con thì nhận request từ app/front endthực sự ở cty các bác triển khai microservice như nào vậy
có phải triển khai kiểu như trong này hướng dẫn k các bác![]()
Ý tưởng cơ bản về Microservices
I. Microservices là gì mà khiến giới giang hồ điên đảo vì nó suốt nhiều năm???viblo.asia
hay có cách khác hay hơn
rollback thì có 1 cách. 1 là 2 phase commit, 2 là saga. Nhưng khuyên dùng saga hơn. Còn blog thì mình cũng ko biết, chỉ lấy từ kinh nghiệm thực tế đang triển khaicó blog nước ngoài nào viết chuẩn như bác nói k cho e xin với
rollback ý của bác là saga pattern phải k
Được chứ bác, dùng tốt là đằng khác ấy. Nhưng đợt này bên mình do cần dồn dịch tài nguyên và 1 vài lí do bất khả kháng nên phải off keycloak đi và tự làm 1 con IAM để dùng. Nghĩ cũng chán mà thôi cũng kệ.E thấy thg keycloak cx có mục phân chia permission cho resource. Liệu có thể để thg keycloak làm phần này thay vì tự implement k bác
mỗi 1 service phải tách riêng DB thì mới gọi là microservice chứ. Dùng chung thì là micro nửa vời, chả khác gì mono cả.Các bác dùng 1 db per service hay chung db giữa các service thế ?