2012-04-27 27 views
13

Khi nào tôi chọn triển khai dưới dạng JBoss SAR thay vì EAR?JBoss SAR vs bao bì EAR/WAR

Đây là câu hỏi chung hơn và tôi đang tìm các nguyên tắc giải thích các ưu và nhược điểm của mỗi mô hình triển khai và mô hình nào được áp dụng khi nào.

Trả lời

23

Bạn sẽ xây dựng một SAR (kho lưu trữ dịch vụ) khi bạn muốn mở rộng khả năng của máy chủ. Ví dụ, JBoss sử dụng SAR cho người triển khai EJB hoặc nhắn tin. Bạn có thể tạo một cái để theo dõi dịch vụ của riêng bạn (ví dụ: xem một số chỉ số cho một trong các dịch vụ tùy chỉnh của bạn). Theo như tôi biết, SAR là duy nhất đối với JBoss.

Từ trải nghiệm cá nhân của tôi, tôi đã từng tạo SAR để theo dõi dịch vụ web. Tôi chủ yếu sử dụng thành phần dịch vụ để theo dõi độ dài của danh sách những thứ mà thành phần dịch vụ web đã tạo. Đây là một cách tôi có thể poke trong giao diện điều khiển jmx và tìm hiểu một số số liệu về các yêu cầu gửi đến dịch vụ web.

SAR dựa trên thông số kỹ thuật của JMX nên không khó để tạo chúng. Về cơ bản, bạn tạo một giao diện MBean chuẩn và triển khai giao diện đó. Bạn cũng sẽ muốn đảm bảo rằng bạn có tệp jboss-service.xml trong thư mục META-INF.

Mặt khác, WAR và EAR là dành cho bao bì ứng dụng chuẩn, nơi bạn mong đợi vùng chứa quản lý và xử lý yêu cầu cho ứng dụng. Bạn không mong đợi ứng dụng đang chạy như một thành phần dịch vụ ẩn danh như bạn làm trong trường hợp ứng dụng đóng gói SAR.

Hy vọng điều này sẽ hữu ích!

+0

SAR dường như không phải là JBoss cụ thể; ví dụ, WebSphere dường như hỗ trợ họ (xem [tài liệu] (http://pic.dhe.ibm.com/infocenter/wasinfo/v8r0/index.jsp?topic=%2Fcom.ibm.websphere.express.doc%2Finfo % 2Fexp% 2Fae% 2Fcrun_app_install.html)). –

+1

Khi kiểm tra chặt chẽ hơn, WebSphere sử dụng SAR để có nghĩa là "kho lưu trữ Session Initiation Protocol (SIP)", có lẽ khác với "kho lưu trữ dịch vụ". –

+0

Có lẽ vậy. Tôi không quen thuộc với Websphere. Cảm ơn bạn đã bình luận, đó là một thông tin tốt. – CoolBeans