Chúng tôi có ứng dụng Java chuẩn bog của bạn đang được phát triển và rất nhiều bản ghi chúng tôi đang tạo (các thực thể Hibernate trong MySQL) có dấu thời gian 'được tạo' và 'sửa đổi' trên chúng.Với một dấu thời gian được tạo ra, tốt hơn là để DB quản lý nó hay ứng dụng?
Bây giờ, tôi và một trong các nhà phát triển không đồng ý - tôi tin rằng cả hai trường đó phải có mặc định MySQL là CURRENT_TIMESTAMP và sau đó ứng dụng có thể thay đổi sửa đổi. Anh ta muốn cả hai được quản lý bởi ứng dụng.
Có lý do thuyết phục nào cho một trong hai quyết định không? Tôi không thể thấy lý do tại sao bạn muốn thêm các bước rõ ràng hơn vào mã, trừ khi vì lý do nào đó mà bạn lo ngại về máy chủ của mình (db, ứng dụng) có dấu thời gian không nhất quán.
+1 nhưng bạn có thể giải thích về cách điều này quan trọng không. –
Tôi vẫn không nhận được nội dung cụm. Có hoặc không có bộ nhớ cache cấp 2, tại sao bạn sẽ thấy những thứ khác nhau trên các nút khác nhau. Nếu bạn có một cái gì đó cụ thể, xin vui lòng làm rõ bởi vì điều này chỉ có vẻ không đúng với tôi: clustering ứng dụng của bạn không buộc bạn phải sử dụng dấu thời gian db trong bất kỳ cách nào. –
tốt, bạn có thể đặt nó chính xác ở mọi nơi, nhưng nó là phí trên + tùy chọn DST và múi giờ + cần phải đặt lại trên mỗi nút mới. Thành thật mà nói, tôi đã chỉ có một kinh nghiệm rất cụ thể với kịch bản này mà không áp dụng cho trường hợp thông thường, và chúng tôi đang sử dụng một máy chủ dấu thời gian. – Bozho