Maison > Opération et maintenance > Docker > Quelle est la différence entre jvm et docker

Quelle est la différence entre jvm et docker

WBOY
Libérer: 2022-01-28 11:01:52
original
4031 Les gens l'ont consulté

Différences : 1. Il n'y a presque aucune perte de performances supplémentaire lors de l'exécution de Docker, tandis que la JVM aura des pertes supplémentaires de CPU et de mémoire ; 2. Docker est portable, flexible et peut être utilisé avec Linux, tandis que la JVM est relativement volumineuse et mal couplée. à la machine virtuelle. Élevé ; 3. L'image stockée par docker est petite, tandis que l'image stockée par jvm est énorme.

Quelle est la différence entre jvm et docker

L'environnement d'exploitation de ce tutoriel : système linux7.3, version docker-1.13.1, ordinateur Dell G3.

Quelle est la différence entre jvm et docker ?

Docker a moins de couches d'abstraction que les machines virtuelles. Docker ne nécessite pas d'hyperviseur pour virtualiser les ressources matérielles. Les programmes exécutés sur des conteneurs Docker utilisent directement les ressources matérielles de la machine physique réelle. Par conséquent, Docker aura des avantages évidents en termes d’efficacité en termes d’utilisation du processeur et de la mémoire.

Docker utilise le noyau de l'hôte et ne nécessite pas de système d'exploitation invité. Par conséquent, lors de la création d’un conteneur, il n’est pas nécessaire de recharger un noyau de système d’exploitation comme une machine virtuelle. Cela évite le processus long et gourmand en ressources de démarrage, de chargement du noyau du système d'exploitation et de retour. Lorsqu'une nouvelle machine virtuelle est créée, le logiciel de la machine virtuelle doit charger le système d'exploitation invité et le retour au nouveau processus de création prend place. minutes. La création d'un nouveau conteneur Docker ne prend que quelques secondes.

Par rapport à JVM :

  • Docker fonctionne avec presque aucune perte de performances supplémentaire, tandis que le système d'exploitation JVM consomme du processeur et de la mémoire supplémentaires

  • Docker est portable, léger, flexible et adaptable à Linux, tandis que JVM est volumineux et Virtuel Haut degré de couplage machine

  • L'image stockée par Docker est petite et facile à stocker et à transférer. L'image de la JVM est énorme.

La technologie "Conteneur" telle que Docker simule un système d'exploitation entier. Elle existe de manière statique et peut prendre en charge l'exécution d'applications sur n'importe quelle même plateforme, et le conteneur lui-même est indépendant du processus

jvm est une plateforme d'exécution de code spécifique, qui existe lors de l'exécution, ne peut prendre en charge que l'exécution de code spécifique et doit être dans le processus jvm. Les conteneurs tels que Docker pour le noyau Linux ne peuvent pas être directement compatibles avec Windows et jvm. la machine est indépendante de la plate-forme et presque toutes les plates-formes sont cohérentes. Le conteneur exécute du code natif, qui est ce qu'on appelle le « code machine »

jvm exécute un pseudo-code standard spécifique (c'est-à-dire le bytecode jvm). l'hôte est isolé, sans mappage d'hôte, le programme ne peut pas accéder directement aux ressources de l'hôte ;

jvm n'est pas isolé de l'hôte et peut mapper et utiliser les ressources de l'hôte par lui-même. Le conteneur est statique, autonome, dispose d'un système de fichiers. et les programmes exécutables, et ne Un processus doit être démarré ;

jvm n'a de sens que lorsqu'il est démarré en tant que processus. Il est indépendant, ne possède pas son propre système de fichiers et ne contient pas d'applications. fourni par des fichiers ou d'autres sources à partir du point d'entrée selon les besoins. Code

De manière générale, les machines virtuelles comme JVM et Docker ont des origines techniques. Ce sont toutes deux des environnements hôtes virtualisés

C'est juste que JVM est une application de niveau supérieur. environnement d'exécution virtuel orienté et spécifique. Docker est un environnement d'exécution universel orienté vers le niveau du système d'exploitation

Apprentissage recommandé : "

Tutoriel vidéo Docker

"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal