Khi nào tôi nên chọn phương thức async ejb trên MDB với dịch vụ tin nhắn java để kích hoạt các tác vụ thời gian dài không đồng bộ?Mdb vs EJB 3.1 phương thức không đồng bộ
Trả lời
@MessageDriven
(MDB) là một phần của API JMS. JMS có tất cả các loại tính năng bổ sung khi nói đến việc thử lại khi sử dụng tin nhắn không thành công, hỗ trợ giao dịch và cũng cho phép bạn kiểm soát hàng đợi tin nhắn.
@Asynchronous
chú thích không được giới thiệu cho java-ee-6 (ejb 3.1).
Giả sử các usecase là đơn giản gọi không đồng bộ trong một java-ee-6 thùng trở lên, sử dụng @Asynchronous (arun guptas blog on this)
Nếu bạn cần thêm ngoài đó, JMS có thể là một lựa chọn
@Asynchronous
là chỉ thích hợp nếu giao dịch bên ngoài cần khởi chạy một vài tác phẩm song song và sau đó chờ đợi tất cả (hoặc khởi chạy một tác phẩm đơn lẻ trong nền, thực hiện một số công việc ở nền trước và sau đó đợi công việc nền). @Asynchronous
không thích hợp cho giao dịch "cháy và quên" vì vùng chứa có thể bị hỏng trước khi công việc không đồng bộ bắt đầu thực hiện (theo ý kiến của tôi, vô hiệu các phương thức không đồng bộ EJB rất hiếm khi hữu ích, có thể là như cập nhật bộ đệm trong bộ nhớ). Nếu bạn muốn đảm bảo công việc sẽ xảy ra một cách không đồng bộ mà không phải đợi nó hoàn thành, thì bạn nên gửi một tin nhắn tới MDB hoặc lên lịch hẹn giờ EJB.
- 1. Phương thức gọi Không đồng bộ trong EJB
- 2. Phương pháp EJB 3.1 không đồng bộ và các giao dịch
- 3. Hủy cuộc gọi EJB không đồng bộ @
- 4. @ Không đồng bộ không dẫn đến việc gọi async không đồng bộ của phương thức EJB trong JBossAS7
- 5. EJB và Đồng bộ hóa
- 6. Cách tạo phương thức không đồng bộ
- 7. Đang chờ phương thức không đồng bộ
- 8. Đợi phương thức không đồng bộ void
- 9. Nếu phương thức được đồng bộ hóa gọi phương thức không đồng bộ khác, có khóa trên phương thức không đồng bộ
- 10. Gọi một phương thức không đồng bộ từ một phương pháp không đồng bộ
- 11. Gọi đồng bộ các phương thức hợp đồng vận hành WCF không đồng bộ trên silverlight
- 12. Cách đúng để sử dụng các phương pháp không đồng bộ EJB
- 13. Có an toàn khi gọi phương thức được đồng bộ từ một phương thức được đồng bộ khác không?
- 14. Java - Không đồng bộ trong Servlet 3.0 vs NIO trong Servlet 3.1
- 15. đồng bộ hóa (this) vs đồng bộ hóa (MyClass.class)
- 16. Các phương thức đồng bộ trong C#
- 17. Kiểm tra đơn vị EJB 3.1
- 18. Chúng ta có thể sử dụng ejb-jar.xml thay vì chú thích cho MessageDrivenBean (MDB) trong EJB 3.0 không?
- 19. EJB 3.1 @LocalBean và không có chú thích
- 20. Nhận kết quả của phương thức không đồng bộ
- 21. Gọi và giả mạo phương thức không đồng bộ
- 22. Tạo phương thức dịch vụ web không đồng bộ
- 23. Xác thực tham số theo phương thức không đồng bộ
- 24. Giao diện và các phương thức không đồng bộ
- 25. Kiểm tra cuộc gọi phương thức không đồng bộ
- 26. Mã chặn # c trong phương thức không đồng bộ
- 27. chỉ cần dừng phương thức không đồng bộ
- 28. Chạy các phương thức không đồng bộ song song
- 29. Gọi phương thức không đồng bộ trên nút bấm
- 30. Đồng bộ Vs Không đồng bộ trên iPhone
Cách vùng chứa có thể "lỗi"? – Dherik
Quá trình JVM bị giết, máy đột ngột mất điện, v.v. –