Giao dịch cơ sở dữ liệu là một khái niệm quen thuộc.Giao dịch JMS
try {
...
..
updateDB()
..
...
commit();
} catch error {
rollback();
}
nếu có lỗi xảy ra bất kỳ thay đổi nào do updateDB thực hiện sẽ bị hủy.
Tôi muốn biết thông báo giao dịch hàng đợi thư sẽ hoàn tác như thế nào.
try{
...
...
//EDIT: swapped the order of receive and send
Message m = queue1.receiveMessage(..)
..
..
queue2.sendMessage(..)
..
..
commit();
} catch error {
rollback();
}
đặc biệt, điều gì sẽ rollback làm
- hủy việc gửi thông điệp
- un-nhận được thông báo tức là đặt lại nhận nhắn lại phải xếp hàng
hoặc là tôi kéo dài cơ sở dữ liệu tương tự tx quá xa.
nhờ
EDIT: tôi không ngụ ý gửi và nhận các hoạt động có liên quan. tôi chỉ muốn nói rằng có hai hoạt động thay đổi trạng thái của nhà môi giới tin nhắn - nhận sẽ đưa ra một thông điệp từ hàng đợi sẽ không có sẵn cho người tiêu dùng khác nếu có.
cảm ơn thông tin chi tiết của bạn. nhưng tôi đã không ngụ ý rằng tôi đã chờ đợi một thư trả lời của tin nhắn gửi, chỉ muốn chỉ ra hai thay đổi của nhà nước. tôi đã thêm giải thích cho câu hỏi của mình và đổi thứ tự nhận/gửi tin nhắn. – mzzzzb