THẢO LUẬN

Mình chuyên làm PHP - Laravel. Bạn làm mình nhớ đến PR đầu tiên của mình cho Laravel, cũng là PR đầu tiên cho 1 dự án open source. Trong đó, mình sửa 1 lệnh gọi method thiếu tham số. Sau này, mình cũng contribute cho một số dự án PHP khác nữa. Phần lớn cũng là sửa lỗi, sửa tài liệu, và thêm một vài tính năng nhỏ.

Quả thật là rất vui vì cảm giác "rất gì và này nọ" =))

Nhưng điểm mà mình thấy hay nhất ở đây đó là bản thân chúng ta sử dụng dự án của họ một cách miễn phí để xây dựng sản phẩm của chính mình. Thay vì buy them some cups of coffee, đóng góp nho nhỏ cho mã nguồn, tài liệu cũng coi như sự cảm ơn dành lại cho cộng đồng.

+1
Avatar
đã bình luận cho bài viết
thg 8 12, 9:25 SA

Edgar Snyder & Associates is a personal injury and workers compensation law firm representing people hurt in all types of accidents with offices located in Pennsylvania, including Pittsburgh, Harrisburg, Johnstown, and Altoona. We also have attorneys licensed to practice law in the states of West Virginia, Ohio, Maryland, and New Jersey. If you or someone you love were seriously injured in a car accident in Pittsburgh, our car accident attorneys pittsburgh is here to help. Contact us today for a free case review.

0

Bro viết hay vãi 👑

0

có ai viết code giá re không liên hệ gmail minihf nhé doanhnghiepbaothienlong@gmail.com

0
  • thay vì truyền index mình có thể chuyển: một property cụ thể mà chỉ có item đấy có ( uuid, id, …).
  • với list static, không thay đổi (reordered, filered..) thì dùng index là key vẫn không oke.
0

Mình cảm ơn bác nhé . Lại tiếp thêm động lực hơn rồi hẹ hẹ

0

Bài này xứng đáng viral hơn bác ơi, đang đọc chưa xong mà phải xuống cmt cảm ơn bác chứ sợ quên nè, rất chi tiết nha, kiểu đọc từ bài này sau đó muốn tìm hiểu thêm định nghĩa nào trong này thì có thể tìm hiểu á, còn trong này tập hợp đầy đủ =))))

+1
thg 8 8, 3:03 SA

Vấn đề này khá là khó đối với người mới, mình có một số cách như sau:

  1. Sử dụng Transactional outbox pattern, bạn có thể đọc qua bài viết của anh Dat Bui ( https://viblo.asia/p/distributed-transaction-transactional-outbox-pattern-maGK7r695j2 ). Bài viết này siêu hay mà mình phải gật gù theo, nó sẽ là một cách giúp bạn giải quyết vấn đề này. Mình có thể tả nôm na như sau nha:
  • Khi service OrderCreated tạo ra sự kiện, thay vì đẩy ngay lên event bus, nó ghi sự kiện vào một bảng “outbox” trong cùng transaction với bảng order.
  • Sau đó mình dùng 1 con worker đọc bảng outbox, gửi event lên event bus, rồi đánh dấu đã gửi. -> Cách này đảm bảo rằng nếu service bị crash sau khi lưu order nhưng chưa gửi event, thì event vẫn còn trong outbox để gửi lại sau.
  1. Là sử dụng retry + dead-letter queue. Nếu việc xử lý một event thất bại thì hệ thống có thể retry. Nếu retry nhiều lần vẫn lỗi, gửi event vào Dead Letter Queue. Bạn có thể tham khảo ở đây: https://viblo.asia/p/error-handling-dead-letter-queue-dlq-kafka-E1XVOkQEVMz

  2. Là mình có cơ chế sync dữ liệu theo batch để mà đảm bảo dữ liệu của các service là đồng nhất.

🧐Hiện tại thì mình chỉ biết có 3 cách này thôi, bạn còn cách nào nữa theo phản hồi giúp mình để mình tham khảo với nhé

0
thg 8 8, 1:36 SA

mình có 1 câu hỏi ở cách cuối cùng: làm cách nào để đảm bảo dữ liệu đồng bộ sang không bị mất nếu có lỗi xảy ra

0
thg 8 7, 8:52 SA

Thanks

0
thg 8 7, 6:23 SA

Đọc xong không hiểu gì

0

cho e hỏi vậy thay vì truyền index thì nên truyền gì ạ ?

0
thg 8 7, 2:30 SA

tks

0

bài rác vậy mà cũng lên được

0
thg 8 5, 6:43 SA

getProducts() có sử dụng query filter như product_name, brand_id ... vậy cache và làm tươi thế nào mong được giải đáp

0

It was great. I enjoyed it.👍

0

👍️👍️👍️

0
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí