@jackvo cách của bạn mình đã đề cập ở trong bài rồi, vấn đề là với frontend mỗi khi các bạn muốn đổi env thì các bạn phải build + run lại hoặc là cần phải tốn 1 API để call.
Với cách trong bài này thì chỉ cần restart lại là được mà ko cần build hay call API. Mục đích là đưa frontend giống như backend, chỉ cần build 1 lần và chạy được trên nhiều môi trường
Đối với các biến môi trường .env thì trên các cloud đều hỗ trợ service kiểu Secret Manager/ParameterStore để call API mỗi khi cần build
Phía infra chỉ cần khai báo các env này trên cloud và khi build thì CICD trên Cloud như AWS CloudBuild sẽ grant quyền call các env này.
Do đó nếu chỉ dùng cho docker, và với môi trường on-premise thì cách này khá là hay. Còn lên cloud, họ cũng có sẵn service đáp ứng giải pháp này rồi.
Về cách giải quyết cho duplicate event thì trong scenario thực tế tụi em gán cho nó 1 unique id ( or flag) từ đó make sure consumer không thể consume message cùng nhau or we can call idempotent consumer. Không biết nó có giống với trường hợp anh đề cập không ạ ?
Tôi cũng xem bài viết của nhiều người nhưng ấn tượng nhất với những bài viết của bạn,từ Flutter tới Android.Những bài viết của bạn rất dễ hiểu và cái cách của bạn hiểu vấn đề rất sâu
Em chào anh, ở phần using S3 sau khi em terraform init thì ra lỗi này :
IAM Role (arn:aws:iam::<ACCOUNT_ID>:role/HpiS3BackendRole) cannot be assumed.
Error: operation error STS: AssumeRole, https response error StatusCode: 403, RequestID:
│ ca44b8ed-05a3-438b-a67a-1b76e4842957, api error AccessDenied: User: arn:aws:iam::044064368602:user/datnx is not authorized
│ to perform: sts:AssumeRole on resource: arn:aws:iam::<ACCOUNT_ID>:role/HpiS3BackendRole
Mặc dùng em đã aws config cho thằng AIM user có quyền admin nhưng không thể init, không biết vấn đề nằm ở đâu ạ ?
Tks anh, em có câu hỏi là ở question cuối, lựa chọn giữa multi process và multi thread. Em có thấy anh mention tới microservices. Vậy là mình vãn có thể dùng monolithic cho trường hợp multi process nhưng ko phải là best practice đk ạ
Mình có chút góp ý là maybe có quá nhiều code và chúng không được giải thích rõ ràng. Tất nhiên thì những bạn đã biết ruby có thể hiểu được phần nào nhưng mình nghĩ tập người xem chung thì không phải vậy. Anw tks bạn vì bài viết này
Iwin Club là cổng game bài đổi thưởng trực tuyến uy tín, đẳng cấp, ra mắt thị trường vào tháng 12 năm 2021. Iwin Club cung cấp đa dạng các trò chơi bài, game quay hũ, mini game hấp dẫn như: Tiến lên miền Nam, Phỏm, Mậu binh, Xì dách, Tài xỉu, Sâm lốc, Bầu cua, Xóc đĩa,... đáp ứng mọi nhu cầu giải trí của người chơi. Website: https://iwinclub.bid/ Công Ty: game online iwin Địa Chỉ: 20 Phan Huy Ích, Phường 15, Tân Bình, Thành phố Hồ Chí Minh, Việt Nam Phone: 0967787111 Tags: #iwinclub #IWIN_CLUB #IWIN #gameiwin #taiiwin #taiiwinclub #taiiwinapp #linktaiiwin
THẢO LUẬN
@jackvo cách của bạn mình đã đề cập ở trong bài rồi, vấn đề là với frontend mỗi khi các bạn muốn đổi env thì các bạn phải build + run lại hoặc là cần phải tốn 1 API để call.
Với cách trong bài này thì chỉ cần restart lại là được mà ko cần build hay call API. Mục đích là đưa frontend giống như backend, chỉ cần build 1 lần và chạy được trên nhiều môi trường
Thank nhé, mặc dù bài viết translate từ bài gốc English. Nhưng tác giả đã diễn giải bằng VNmese với sự hiểu biết chuyên môn, và dễ hiểu.
Thanks.
Kể cả on-prem thì mình vẫn có thể store env ở đâu đó và gọi trên pipeline được chứ nhỉ?
Đối với các biến môi trường .env thì trên các cloud đều hỗ trợ service kiểu Secret Manager/ParameterStore để call API mỗi khi cần build Phía infra chỉ cần khai báo các env này trên cloud và khi build thì CICD trên Cloud như AWS CloudBuild sẽ grant quyền call các env này. Do đó nếu chỉ dùng cho docker, và với môi trường on-premise thì cách này khá là hay. Còn lên cloud, họ cũng có sẵn service đáp ứng giải pháp này rồi.
Về cách giải quyết cho duplicate event thì trong scenario thực tế tụi em gán cho nó 1 unique id ( or flag) từ đó make sure consumer không thể consume message cùng nhau or we can call idempotent consumer. Không biết nó có giống với trường hợp anh đề cập không ạ ?
@mhtuan ukm, mình chỉ muốn hỏi tại thấy bạn đang chạy docker yaml thì sẵn tiện dùng luôn kafka ui cho dễ thôi, chứ mình thấy dùng gì cũng được
Cho em hỏi website forcatshop https://www.forcatshop.com/ này đuợc xây dựng hoàn toàn bằng NextJs luôn ạ?
cnay là tùy lựa chọn thôi b 😅 nó đều là cung cấp UI để tương tác nên mình thấy tiện cnao thì mình dùng thôi, mình thì quen dùng kafdrop 😄
Bài viết hay, nhưng mình có góp ý đừng nên ghép khá nhiều thứ không liên quan, 1 ít thì được nhưng nhiều quá thì mình nghĩ người xem lại càng rối rắm
Tôi cũng xem bài viết của nhiều người nhưng ấn tượng nhất với những bài viết của bạn,từ Flutter tới Android.Những bài viết của bạn rất dễ hiểu và cái cách của bạn hiểu vấn đề rất sâu
Em chào anh, ở phần using S3 sau khi em terraform init thì ra lỗi này : IAM Role (arn:aws:iam::<ACCOUNT_ID>:role/HpiS3BackendRole) cannot be assumed. Error: operation error STS: AssumeRole, https response error StatusCode: 403, RequestID: │ ca44b8ed-05a3-438b-a67a-1b76e4842957, api error AccessDenied: User: arn:aws:iam::044064368602:user/datnx is not authorized │ to perform: sts:AssumeRole on resource: arn:aws:iam::<ACCOUNT_ID>:role/HpiS3BackendRole Mặc dùng em đã aws config cho thằng AIM user có quyền admin nhưng không thể init, không biết vấn đề nằm ở đâu ạ ?
why use kafdrop, i think we can deploy a kafka ui on docker instead ?
Cái đó a sẽ viết ở series k8s nhé e
Idol cháy quá anh làm về HELM đi anh
Tks anh, em có câu hỏi là ở question cuối, lựa chọn giữa multi process và multi thread. Em có thấy anh mention tới microservices. Vậy là mình vãn có thể dùng monolithic cho trường hợp multi process nhưng ko phải là best practice đk ạ
Mình có chút góp ý là maybe có quá nhiều code và chúng không được giải thích rõ ràng. Tất nhiên thì những bạn đã biết ruby có thể hiểu được phần nào nhưng mình nghĩ tập người xem chung thì không phải vậy. Anw tks bạn vì bài viết này
Hay, qua hay
Iwin Club là cổng game bài đổi thưởng trực tuyến uy tín, đẳng cấp, ra mắt thị trường vào tháng 12 năm 2021. Iwin Club cung cấp đa dạng các trò chơi bài, game quay hũ, mini game hấp dẫn như: Tiến lên miền Nam, Phỏm, Mậu binh, Xì dách, Tài xỉu, Sâm lốc, Bầu cua, Xóc đĩa,... đáp ứng mọi nhu cầu giải trí của người chơi. Website: https://iwinclub.bid/ Công Ty: game online iwin Địa Chỉ: 20 Phan Huy Ích, Phường 15, Tân Bình, Thành phố Hồ Chí Minh, Việt Nam Phone: 0967787111 Tags: #iwinclub #IWIN_CLUB #IWIN #gameiwin #taiiwin #taiiwinclub #taiiwinapp #linktaiiwin
.
Great! Thank a đã chia sẻ!