hello bạn, thực tế hiện tại mình thấy nhiều cty đã và đang dùng MFE nhiều dần rồi đó bạn. Khi mình viết bài này thì nhiều bạn nhắn tin hỏi mình và mình thấy là ở VN người cũng đã dùng dần rồi.
Và khi mình từ cty cũ làm MFE vô cty mới cũng thấy họ đang làm MFE còn mạnh hơn cty cũ nữa (cũng module federation các kiểu).
Còn việc chi phí + maintain thì tuỳ cách ta vận hành sao cho thích hợp thôi bạn, nó mà khó và cao hơn thì đã chẳng grow và có người dùng. Mình cũng làm MFE từ cty cũ sang cty mới mình cũng có thể thấy được điểm mạnh/yếu của nó, đánh giá nếu phù hợp dùng thì vẫn oke thôi.
Chắc do use case của bạn chưa thích hợp thôi 😁
(Và bởi vì thấy có nhiều người quan tâm nhắn mình nên mình mới quyết định viết thành 1 series từ 1 tuần trước, thay vì chỉ mỗi bài này)
Kể cả cty lớn cũng chẳng dùng MFE đâu bạn à. Trừ khi project đó nuôi cả cty ví dụ như tiki, nab. Google, Fb chỉ sử dụng Monorepo để quản lý các project thôi, còn đây là dạng kiến trúc cho các big project nên mình nghĩ bạn cũng k cần phải hiểu nó quá kỹ
Cảm ơn bạn nha. Thực tế các công ty rất ít dùng Micro Frontend. Cơ bản vì nó rất khó tích hợp cũng như maintain sau này. Chi phí để code & maintain dự án có khi còn cao hơn cách thông thường. Mà website hiện nay ko to đến mức mà phải sử dụng micro-frontend.
Như này vẫn chưa giải quyết được vấn đề ghi dữ liệu đúng không anh?
Trong 1 cụm K8s có master có thể ghi data. Nếu phân tải ra các VPS khác nhau thì việc ghi dữ liệu cũng phải thao tác vào Master. Nếu thế thì phải làm thế nào khi Concurrency quá cao vậy anh?
Cảm ơn anh vì bài viết chi tiết và dễ hiểu.
@Tafi Khá hiếm gặp Builder trong thực tế, và cũng ít trường hợp có thể áp dụng. Nếu không hiểu rõ Builder thì có thể gặp phải cái goi là quan liêu trong thiết kế. Cá nhân thì tôi cũng không chắc việc dùng Builder trước đây có ok không. Nhưng có một số dấu hiệu khi dùng Builder:
Constructing phức tạp.
Constructor + Factory Method không thỏa mãn.
Product object gần như immutable.
Một vài ví dụ tìm được:
UrlBuilder
Đây là Builder đơn giản gặp cả trong Java và .Net. UrlBuilder mạnh hơn constructor + Factory nhờ:
Khả năng tùy biến đơn giản hơn (absolute, relative url, query params, protocols).
Hạn chế lỗi (chẳng may kết xuất url khi chưa đủ thông tin).
Kết quả sau cuối là string - immutable.
HostBuilder (WebHostBuilder)
Cái này bên .Net, tìm bên Java Springboot không có cái nào trùng tên (nhưng có thể có cái cùng chức năng mà không biết).
HostBuilder cung cấp nhiều giao diện để config một Host trước khi chạy. Điều này constructor và Factory khó có thể cung cấp (hoặc để cung cấp cần quá nhiều parameters, overloading).
Kết quả coi như immutable (Host sau khi build sẽ chạy suốt runtime)
ReportBuilder
Cái này thì implement trước đây, cung cấp các giao diện buildHeader, Body, Footer, kết xuất cuối cùng là xml hoặc html. Dùng builder khác gì so với report.AddHeader(), report.AddBody()...?
Hạn chế lỗi không mong muốn (render report khi chưa đủ các thành phần)
Chia nhỏ các bước để giảm độ phức tạp cũng như tăng khả năng tái sử dụng.
Kết quả cuối cùng cũng là immutable (xml string, html string).
Cách này có vẻ dễ gặp trong thực tế khi xử lý các bài toán convert từ một dạng này sang một dạng khác. Các cái tên liên quan như Parser, Renderer. Bắt buộc phải qua nhiều bước xử lý để có kết quả cuối cùng nên constructor, Factory không tham gia được. Kết quả cuối cùng cũng có thể coi là immutable khi không còn nhu cầu xử lý trên nó nữa.
Chào A !
A cho e hỏi, khi em cài Plugin như vậy, mình click mà chữ danh mục đã tạo thì nó ko show ra bài viết danh mục đó,thì có cách nào show ra không a ?
THẢO LUẬN
Bài viết gốc thì viết lan man đọc mất thời gian. Bài này thì ngắn quá vài cái không hiểu kiểu gì =))
Anh chưa hiểu ý em, em có thể đính kèm ảnh được không?
K8S vẫn viết chứ e, AWS để a xem nhé, kham nhiều quá k viết nổi 🤣🤣
hi vọng có thêm phần "thay vào đó" hoặc "để giải quyết vấn đề này thì" trong comment tới của bạn
Làm khóa AWS đi idol hóng quá còn chưa biết xong vụ series K8S chưa :v
Cái này mình dựa vào template trong log4j2 nhé sóp, tuỳ vào log mà mình cấu hình, kia là mình ví dụ ạ
"dữ liệu log request và response mà bạn đã cung cấp", cái này b để ở đâu thế, cho mình xem log example
hello bạn, thực tế hiện tại mình thấy nhiều cty đã và đang dùng MFE nhiều dần rồi đó bạn. Khi mình viết bài này thì nhiều bạn nhắn tin hỏi mình và mình thấy là ở VN người cũng đã dùng dần rồi.
Và khi mình từ cty cũ làm MFE vô cty mới cũng thấy họ đang làm MFE còn mạnh hơn cty cũ nữa (cũng module federation các kiểu).
Còn việc chi phí + maintain thì tuỳ cách ta vận hành sao cho thích hợp thôi bạn, nó mà khó và cao hơn thì đã chẳng grow và có người dùng. Mình cũng làm MFE từ cty cũ sang cty mới mình cũng có thể thấy được điểm mạnh/yếu của nó, đánh giá nếu phù hợp dùng thì vẫn oke thôi.
Chắc do use case của bạn chưa thích hợp thôi 😁
(Và bởi vì thấy có nhiều người quan tâm nhắn mình nên mình mới quyết định viết thành 1 series từ 1 tuần trước, thay vì chỉ mỗi bài này)
Kể cả cty lớn cũng chẳng dùng MFE đâu bạn à. Trừ khi project đó nuôi cả cty ví dụ như tiki, nab. Google, Fb chỉ sử dụng Monorepo để quản lý các project thôi, còn đây là dạng kiến trúc cho các big project nên mình nghĩ bạn cũng k cần phải hiểu nó quá kỹ
Cảm ơn bạn nha. Thực tế các công ty rất ít dùng Micro Frontend. Cơ bản vì nó rất khó tích hợp cũng như maintain sau này. Chi phí để code & maintain dự án có khi còn cao hơn cách thông thường. Mà website hiện nay ko to đến mức mà phải sử dụng micro-frontend.
có vẻ như vậy
thanks b 🙌
câu trả lời đang được update lên dần r nha bác
câu trả lời đang được update lên dần r nha bác
câu trả lời đang được update lên dần r nha bác
hay
Như này vẫn chưa giải quyết được vấn đề ghi dữ liệu đúng không anh? Trong 1 cụm K8s có master có thể ghi data. Nếu phân tải ra các VPS khác nhau thì việc ghi dữ liệu cũng phải thao tác vào Master. Nếu thế thì phải làm thế nào khi Concurrency quá cao vậy anh? Cảm ơn anh vì bài viết chi tiết và dễ hiểu.
@Tafi Khá hiếm gặp Builder trong thực tế, và cũng ít trường hợp có thể áp dụng. Nếu không hiểu rõ Builder thì có thể gặp phải cái goi là quan liêu trong thiết kế. Cá nhân thì tôi cũng không chắc việc dùng Builder trước đây có ok không. Nhưng có một số dấu hiệu khi dùng Builder:
Một vài ví dụ tìm được:
Đây là Builder đơn giản gặp cả trong Java và .Net. UrlBuilder mạnh hơn constructor + Factory nhờ:
Cái này bên .Net, tìm bên Java Springboot không có cái nào trùng tên (nhưng có thể có cái cùng chức năng mà không biết).
HostBuilder cung cấp nhiều giao diện để config một Host trước khi chạy. Điều này constructor và Factory khó có thể cung cấp (hoặc để cung cấp cần quá nhiều parameters, overloading).
Kết quả coi như immutable (Host sau khi build sẽ chạy suốt runtime)
Cái này thì implement trước đây, cung cấp các giao diện buildHeader, Body, Footer, kết xuất cuối cùng là xml hoặc html. Dùng builder khác gì so với report.AddHeader(), report.AddBody()...?
Kết quả cuối cùng cũng là immutable (xml string, html string).
Cách này có vẻ dễ gặp trong thực tế khi xử lý các bài toán convert từ một dạng này sang một dạng khác. Các cái tên liên quan như Parser, Renderer. Bắt buộc phải qua nhiều bước xử lý để có kết quả cuối cùng nên constructor, Factory không tham gia được. Kết quả cuối cùng cũng có thể coi là immutable khi không còn nhu cầu xử lý trên nó nữa.
@ManhNguyen98 ầu sết, thanks e đã phát hiện 🙏
Chào A ! A cho e hỏi, khi em cài Plugin như vậy, mình click mà chữ danh mục đã tạo thì nó ko show ra bài viết danh mục đó,thì có cách nào show ra không a ?