2012-03-24 7 views
62

J'ai remarqué que dans mon installation de JBoss Application Server 7 sous standalone/tmp, j'ai 400 Mo de fichiers liés à des déploiements passés, certains datant de quelques mois.JBoss AS 7: Comment nettoyer tmp?

Comment est-ce nettoyé? Cela devrait-il arriver automatiquement? Y a-t-il un outil pour cela? Puis-je simplement supprimer tous ces fichiers moi-même?

+1

voir http://stackoverflow.com/questions/3015177/to-clean-or-not-to-clean-jboss-home-server- web-tmp-directory – gavenkoa

Répondre

98

Comme vous le savez, JBoss est une installation purement basée sur un système de fichiers. Pour vous installer il suffit de décompresser un fichier et c'est tout. Une fois que vous installez une certaine structure de dossiers est créée par défaut et que vous exécutez l'instance JBoss pour la première fois, elle crée des dossiers supplémentaires pour l'exécution. À titre de comparaison est ici la structure de JBoss AS 7 avant et après avoir commencé pour la première fois

Avant

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

Après

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

Comme vous pouvez le voir 3 nouveaux dossiers sont créés (journal, données & tmp). Ces dossiers peuvent tous être supprimés sans affecter l'application déployée dans le dossier de déploiements, sauf si votre application a généré des données stockées dans ces dossiers. En développement, il est possible de supprimer tous ces 3 nouveaux dossiers en supposant que vous n'avez pas besoin des journaux et des données stockés dans le répertoire "data".

Pour la production, il n'est pas recommandé de supprimer ces dossiers car il peut y avoir des données générées par l'application qui stockent certains états de l'application. Par exemple, dans le dossier de données, le serveur d'applications peut sauvegarder les journaux critiques d'annulation de Tx. Contactez votre administrateur JBoss si vous avez besoin de supprimer ces dossiers pour une raison quelconque en production.

Bonne chance!

+9

Pourquoi est-il déconseillé de supprimer le dossier 'tmp' ou' work' sur Production? Je vous serais reconnaissant si vous pouvez expliquer ou pointer vers un lien à ce sujet. Merci –

+2

Après la suppression de ces 3 dossiers, dans standalone.xml les données doivent être supprimées. – jacktrades

+0

* données * dossier également grand. Mais supprimez-le, vous devez redéployer toutes les applications. Est-ce que quelqu'un sait comment supprimer le dossier * data * de manière efficace? – vanduc1102

5

Je n'ai pas d'expérience avec la version 7 de JBoss mais avec 5 j'ai souvent eu des problèmes lors du redéploiement d'applications qui ont disparu lorsque j'ai nettoyé le dossier de travail et tmp. J'ai écrit un script pour ce qui était exécuté chaque fois que le serveur s'éteignait. Il est peut-être préférable de l'exécuter avant le démarrage en tenant compte des arrêts anormaux (qui n'étaient pas rares avec Jboss 5 :))

+0

wat faisait le script? Je travaille avec JBoss 5 et rencontre le même problème. Je vous remercie. – lrl

+0

Il a juste fait un 'rm -rf' sur tout le contenu des répertoires tmp et de travail. Vous pouvez réellement supprimer l'ensemble du répertoire tmp. Jboss va le recréer au prochain démarrage. – nansen

15

Les fichiers associés au déploiement (et à d'autres éléments temporaires) sont créés dans le système autonome de fichiers/tmp/vfs (Virtual File System). Vous pouvez ajouter une stratégie au démarrage pour les fichiers temporaires délogeant:

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