2013-08-09 29 views

Trả lời

4

Một .WAR là một kho lưu trữ web mà bạn có thể triển khai cho bất kỳ máy chủ ứng dụng Java EE.

A .aar là một tạo phẩm trục2 cụ thể mà bạn có thể triển khai trong một máy chủ ứng dụng nơi bạn đã triển khai ứng dụng web chuẩn của Axis2.

Bạn vẫn có thể triển khai ứng dụng Axis2, bao gồm nhiều dịch vụ, trong ứng dụng web chuẩn, sử dụng chế độ 'được nhúng', như được mô tả tại đây: http://wso2.com/library/90. Chuyển đổi từ chế độ .aar sang chế độ nhúng bao gồm trích xuất tất cả các tệp và cẩn thận đặt chúng vào đúng vị trí cho chế độ được nhúng.

Pro dành cho .aar là triển khai nóng như @ renat-gilmanov đã trả lời.

Pro cho .WAR (nhúng) là

  1. dễ dàng hơn để triển khai và quản lý trong một môi trường sản xuất: chỉ cần triển khai một .WAR trên bất kỳ máy chủ ứng dụng thay vì phải làm theo một quy trình triển khai phức tạp.
  2. bạn có thể bao gồm nhiều servlet khác trong cùng một chiến dịch, chẳng hạn như ví dụ: ứng dụng khách.
3

Axis Lưu Trữ (.aar)

Axis 2 dịch vụ này được đóng gói như Axis Lưu Trữ (.aar). Đây là tệp JAR (được tạo bằng tiện ích jar hoặc zip) với tệp services.xml được đóng gói trong thư mục META-INF của lưu trữ.

Example, The StockQuoteService khi đóng gói như StockQuoteService.aar sẽ có cấu trúc như sau:

./stock/StockQuoteService.class 
./META-INF/services.xml 

Triển khai các dịch vụ trong Axis2 là khá đơn giản; chỉ cần sao chép tệp .aar vào thư mục axis2/WEB-INF/services trong ứng dụng webtrong thùng chứa servlet của bạn. Trong trường hợp của Tomcat, nó sẽ là $ TOMCAT_HOME/webapps/axis2/WEB-INF/dịch vụ.

Dịch vụ là khá một mảnh nhỏ của phần mềm. Hãy suy nghĩ về những điều sau đây: vòng đời

  • dịch vụ, bởi vì bạn cần phải triển khai/redeploy/undeploy một dịch vụ hoặc dịch vụ mà bạn đang phát triển
  • overhead chứa liên quan đến tất cả các ứng dụng được triển khai đơn
  • overhead do một số trường hợp Axis2 triển khai song song
  • lỏng lẻo kiến ​​trúc
  • ...

Bà về mặt vật lý, Axis2 đề nghị xử lý * .aar như một ứng dụng nhẹ. Nó chia sẻ cùng một cá thể Axis2, có thể dễ dàng quản lý và triển khai lại mà không cần dừng toàn bộ doanh nghiệp.

Hãy tưởng tượng bạn phát triển một hệ thống phức tạp. Là một nhà phát triển và kiến ​​trúc sư giỏi, bạn đã quyết định xây dựng hệ thống kết hợp lỏng lẻo bằng cách sử dụng các dịch vụ như một phần chức năng nhỏ nhất. Quá trình phân hủy diễn ra tốt đẹp, vì vậy bạn có ~ 100 dịch vụ. Đó là, bằng cách này, tốt, bởi vì bạn sẽ có thể:

  • đơn giản hóa việc phát triển
  • phát triển một số dịch vụ song song
  • đơn giản hóa thử nghiệm
  • ...

Câu hỏi đặt ra là bạn muốn phát triển tất cả các dịch vụ này như là một ứng dụng riêng biệt (chiến tranh)? Tôi hy vọng bạn sẽ không. Sẽ dễ dàng hơn và hiệu quả hơn khi sử dụng một phương pháp nhẹ như Lưu trữ Axis.

Xin lưu ý, Axis cho phép bạn quản lý vòng đời dịch vụ như Tomcat thực hiện cho ứng dụng.

enter image description here

Availability là một mối quan tâm lớn khi nói đến doanh nghiệp cấp ứng dụng. Ngay cả một khoảng thời gian ngừng hoạt động ngắn cũng có thể cao đến mức gây bất lợi, do đó việc khởi động lại máy chủ không phải là một lựa chọn tốt. Bạn cần cập nhật hệ thống của mình mà không cần tắt hệ thống. Đây là nơi nóng triển khai và cập nhật nóng vào đi.

Hot triển khai là khả năng triển khai các dịch vụ mới trong khi hệ thống là lên và chạy. Ví dụ: giả sử bạn có hai dịch vụ - service1 và service2 - đang hoạt động và bạn triển khai dịch vụ mới gọi là service3 mà không cần tắt hệ thống. Triển khai dịch vụ3 là một kịch bản triển khai nóng.

Cập nhật nóng là khả năng thực hiện thay đổi đối với dịch vụ web hiện có mà không tắt hệ thống. Đây là một tính năng quan trọng và yêu cầu trong môi trường thử nghiệm.

The Axis2 Deployment model, Part 1: Six ways the Axis2 deployment model is more user friendly

Các vấn đề liên quan