JBoss AS 7: Làm thế nào để dọn dẹp tmp?


76

Tôi nhận thấy rằng trong bản cài đặt Máy chủ ứng dụng JBoss 7 của standalone/tmpmình, tôi có 400 MB tệp liên quan đến các lần triển khai trước đây, một số tệp trong số đó đã được vài tháng.

Làm thế nào nó được làm sạch? Nó có nên xảy ra tự động không? Có một công cụ cho nó? Tôi có thể tự mình xóa tất cả các tệp đó không?


Câu trả lời:


117

Như bạn đã biết JBoss là một cài đặt hoàn toàn dựa trên hệ thống tệp. Để cài đặt, bạn chỉ cần giải nén một tập tin và đó là nó. Khi bạn cài đặt một cấu trúc thư mục nhất định được tạo theo mặc định và khi bạn chạy phiên bản JBoss lần đầu tiên, nó sẽ tạo các thư mục bổ sung cho hoạt động thời gian chạy. Để so sánh, đây là cấu trúc của JBoss AS 7 trước và sau khi bạn khởi động lần đầu tiên

Trước

jboss-as-7
 |
 |---> standalone
 |      |----> lib
 |      |----> configuration
 |      |----> deployments
 |      
 |---> domain
 |....

Sau

jboss-as-7
     |
     |---> standalone
     |      |----> lib
     |      |----> configuration
     |      |----> deployments
     |      |----> tmp
     |      |----> data
     |      |----> log
     |      
     |---> domain
     |....

Như bạn có thể thấy 3 thư mục mới được tạo (log, data & tmp). Tất cả các thư mục này đều có thể bị xóa mà không ảnh hưởng đến ứng dụng được triển khai trong thư mục triển khai trừ khi ứng dụng của bạn tạo Dữ liệu được lưu trữ trong các thư mục đó. Trong quá trình phát triển, có thể xóa tất cả 3 thư mục mới này nếu bạn không có nhu cầu về nhật ký và dữ liệu được lưu trữ trong thư mục "data".

Đối với sản xuất, TÔI KHÔNG KHUYẾN CÁO xóa các thư mục này vì có thể dữ liệu do ứng dụng tạo ra để lưu trữ trạng thái nhất định của ứng dụng. Ví dụ: trong thư mục dữ liệu, máy chủ ứng dụng có thể lưu các bản ghi khôi phục Tx quan trọng. Vì vậy, hãy liên hệ với Quản trị viên JBoss của bạn nếu bạn cần xóa các thư mục đó vì bất kỳ lý do gì trong quá trình sản xuất.

Chúc may mắn!


10
Tại sao không nên xóa tmphoặc workthư mục trên Sản xuất? Tôi sẽ rất biết ơn nếu bạn có thể giải thích hoặc chỉ vào một số liên kết liên quan đến điều này. Cảm ơn
Prakash K

2
Sau khi xóa 3 thư mục đó, dữ liệu <deployment> trong standalone.xml sẽ bị xóa.
jacktrades

thư mục dữ liệu cũng lớn. Nhưng xóa nó, bạn phải triển khai lại tất cả các ứng dụng. Có ai đó biết làm thế nào để loại bỏ các thư mục dữ liệu một cách hiệu quả?
vanduc1102

Nếu bạn không muốn triển khai lại mọi thứ (có thể do một số tệp JSP cũ vẫn đang được tham chiếu), chỉ cần xóa tmp.
dvlcube

19

Các tệp liên quan đến việc triển khai (và các mục tạm thời khác) được tạo trong / tmp / vfs độc lập (Hệ thống tệp ảo). Bạn có thể thêm một chính sách khi khởi động để loại bỏ các tệp tạm thời:

-Djboss.vfs.cache=org.jboss.virtual.plugins.cache.IterableTimedVFSCache 
-Djboss.vfs.cache.TimedPolicyCaching.lifetime=1440

2
họ nên thêm ở đâu? standalone.xml?
Kerem

5

Tôi không có kinh nghiệm với phiên bản 7 của JBoss nhưng với phiên bản 5, tôi thường gặp sự cố khi triển khai lại các ứng dụng đã biến mất khi tôi dọn dẹp công việc và thư mục tmp. Tôi đã viết một tập lệnh cho tập lệnh đó được thực thi mỗi khi máy chủ tắt. Có thể thực hiện nó trước khi khởi động tốt hơn là xem xét các trường hợp tắt bất thường (điều này không phổ biến với Jboss 5 :))


wat đã được viết kịch bản? Tôi làm việc với JBoss 5 và gặp vấn đề tương tự. Cảm ơn bạn.
lrl

Nó chỉ thực hiện một 'rm -rf' trên tất cả nội dung của tmp và thư mục công việc. Bạn thực sự có thể xóa toàn bộ thư mục tmp. Jboss sẽ tạo lại nó vào lần khởi động tiếp theo.
nansen,
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.