Lors de la création ou du déploiement d'une application dans un cluster Container Service Kubernetes ou un cluster ACK Serverless, vous pouvez définir des paramètres de démarrage Java pour configurer la mémoire JVM, la politique de ramasse-miettes (GC) ainsi que l'enregistrement et la découverte de services. Une configuration appropriée de ces paramètres permet de réduire la charge liée au GC, de diminuer le temps de réponse (RT) du serveur et d'augmenter le débit.
Configurer les paramètres de démarrage Java lors de la création d'une application
Connectez-vous à la console EDAS console EDAS.
Connectez-vous à la console EDASconsole EDAS. Dans le volet de navigation de gauche, choisissez . La page Applications s'affiche. Dans la barre de navigation supérieure, sélectionnez une région. Dans la partie supérieure de la page, sélectionnez un namespace. Dans le coin supérieur gauche, cliquez sur Create Application.
-
À l'étape Basic Information, définissez Cluster Type et Application Runtime Environment, puis cliquez sur Next.
Paramètre
Description
Cluster Type
Sélectionnez Kubernetes Clusters.
Application Runtime Environment
Sélectionnez Java. Dans la section Select Application, choisissez une méthode de déploiement.
Custom : permet de déployer l'application dans un cluster Kubernetes à l'aide d'une image personnalisée.
Java : permet de déployer l'application en tant qu'application Dubbo ou Spring Boot via un package JAR universel. Ce choix donne accès au paramètre Java Environment.
Tomcat : permet de déployer l'application en tant qu'application Dubbo ou Spring à partir d'un package WAR universel. Les paramètres Java Environment et Container Version deviennent alors configurables.
EDAS-Container (HSF) : permet de déployer l'application en tant qu'application High-Speed Service Framework (HSF) au moyen d'un package WAR ou FatJar. Cette sélection donne accès aux paramètres Java Environment, Pandora Version et Ali-Tomcat Version.
À l'étape Configurations, configurez les informations d'environnement, les informations de base et la méthode de déploiement de l'application, définissez les paramètres de ressources associés, puis cliquez sur Next.
-
À l'étape Advanced Settings, cliquez sur Settings of Java Startup Parameters, puis sur Edit en regard de Settings of Java Startup Parameters, et définissez les paramètres suivants selon vos besoins.
Paramètre
Description
Memory Configuration
Configurez les paramètres suivants :
Initial Heap Size : taille initiale de la mémoire tas, en Mo. La valeur 0 indique une taille illimitée.
Maximum Heap Memory : taille maximale de la mémoire tas, en Mo. Valeurs valides : 0 à (0,85 × Mémoire maximale du conteneur d'application).
Initial Young Generation : taille initiale de la jeune génération, en Mo.
Maximum Young Generation Size : taille maximale de la jeune génération, en Mo. La valeur max_uintx signifie que la taille mémoire est illimitée.
Eden/Survivor Ratio : rapport entre l'espace Eden et l'espace Survivor.
Old/Young Generation Ratio : rapport entre l'ancienne génération et la jeune génération.
Initial Permanent Generation Memory : taille initiale de la génération permanente, en Mo.
Maximum Permanent Generation Size : taille maximale de la génération permanente, en Mo.
Maximum Direct Memory Size : taille maximale de la mémoire directe pour les entrées/sorties non bloquantes (NIO), en Mo.
Thread Stack Size : taille de la pile des threads, en Ko.
Applications
Pour une application HSF, configurez les paramètres suivants :
Port : port associé au démarrage de l'application HSF. La valeur par défaut est 12200.
Serialization : méthode de sérialisation de l'application HSF. Hessian est la valeur par défaut.
Min Pool Size : taille minimale du pool de threads du fournisseur HSF. La valeur par défaut est 50.
Max Pool Size : taille maximale du pool de threads du fournisseur HSF. La valeur par défaut est 720.
GC Policy
Configurez la politique de GC à l'aide des paramètres suivants :
Young Generation GC Policy : stratégie de GC appliquée à la jeune génération.
Old Generation GC Policy : stratégie de GC appliquée à l'ancienne génération. Définissez la politique de la jeune génération avant celle de l'ancienne génération.
Concurrent GC Threads : nombre de threads simultanés utilisés par le GC.
Concurrent GC Threads : nombre de threads simultanés utilisés par le GC.
Coprocess characteristics
Pour activer cette fonctionnalité, activez l'interrupteur Coprocess characteristics.
RemarqueLe paramètre Coprocess characteristics n'est disponible qu'avec le kit de développement Java (JDK) Dragonwell.
Tool
Définissez le Log Directory, le nombre de Total Files et la File Size pour les journaux du GC. Indiquez également le Dump File Path à utiliser en cas d'erreur de mémoire insuffisante.
Service Registration and Discovery
Sélectionnez cette option pour utiliser un registre Nacos autogéré. À défaut, le système utilise automatiquement le registre partagé d'EDAS.
Custom
Si les paramètres précédents ne suffisent pas, ajoutez des paramètres personnalisés séparés par des espaces.
Cliquez sur Create Application.
-
Sur la page Creation Completed, vérifiez les informations des sections Basic Information, Configurations et Advanced Settings. Cliquez ensuite sur Create Application.
Dans la partie supérieure de la page Application Overview, cliquez sur View Details. Consultez la page Change List pour suivre la progression du changement d'application. Patientez quelques minutes jusqu'à la fin du déploiement. Une fois le processus terminé, examinez l'état de l'instance dans la section Basic Information de la page Application Overview. L'application est considérée comme déployée lorsque le statut indique qu'un pod est en cours d'exécution.
Configurer les paramètres de démarrage Java lors de la mise à jour d'une application
Vous pouvez définir les paramètres de démarrage Java lors de la création d'une application, ou les définir et les mettre à jour lors de son déploiement.
Connectez-vous à la console EDAS console EDAS.
Dans le volet de navigation de gauche, cliquez sur . Dans la barre de navigation supérieure, sélectionnez une région. Dans la partie supérieure de la page, sélectionnez un namespace. Dans la liste déroulante Cluster Type, sélectionnez Container Service or Serverless Kubernetes Cluster. Repérez ensuite l'application à déployer et cliquez sur son nom.
Sur la page Overview ou Basic information, choisissez dans le coin supérieur droit.
Sur la page Select Deployment Mode, choisissez un mode de déploiement et cliquez sur Start Deployment dans le coin supérieur droit de la section correspondante.
-
Définissez l'environnement d'exécution de l'application et le package de déploiement. Cliquez sur Settings of Java Startup Parameters, puis sur Edit en regard de Settings of Java Startup Parameters, et configurez les paramètres selon vos besoins. Une fois la configuration terminée, cliquez sur OK.
Paramètre
Description
Memory Configuration
Configurez les paramètres suivants :
Initial Heap Size : taille initiale de la mémoire tas, en Mo. La valeur 0 indique une taille illimitée.
Maximum Heap Memory : taille maximale de la mémoire tas, en Mo. Valeurs valides : 0 à (0,85 × Mémoire maximale du conteneur d'application).
Initial Young Generation : taille initiale de la jeune génération, en Mo.
Maximum Young Generation Size : taille maximale de la jeune génération, en Mo. La valeur max_uintx signifie que la taille mémoire est illimitée.
Eden/Survivor Ratio : rapport entre l'espace Eden et l'espace Survivor.
Old/Young Generation Ratio : rapport entre l'ancienne génération et la jeune génération.
Initial Permanent Generation Memory : taille initiale de la génération permanente, en Mo.
Maximum Permanent Generation Size : taille maximale de la génération permanente, en Mo.
Maximum Direct Memory Size : taille maximale de la mémoire directe pour les entrées/sorties non bloquantes (NIO), en Mo.
Thread Stack Size : taille de la pile des threads, en Ko.
Applications
Pour une application HSF, configurez les paramètres suivants :
Port : port associé au démarrage de l'application HSF. La valeur par défaut est 12200.
Serialization : méthode de sérialisation de l'application HSF. Hessian est la valeur par défaut.
Min Pool Size : taille minimale du pool de threads du fournisseur HSF. La valeur par défaut est 50.
Max Pool Size : taille maximale du pool de threads du fournisseur HSF. La valeur par défaut est 720.
GC Policy
Configurez la politique de GC à l'aide des paramètres suivants :
Young Generation GC Policy : stratégie de GC appliquée à la jeune génération.
Old Generation GC Policy : stratégie de GC appliquée à l'ancienne génération. Définissez la politique de la jeune génération avant celle de l'ancienne génération.
Concurrent GC Threads : nombre de threads simultanés utilisés par le GC.
Concurrent GC Threads : nombre de threads simultanés utilisés par le GC.
Coprocess characteristics
Pour activer cette fonctionnalité, activez l'interrupteur Coprocess characteristics.
RemarqueLe paramètre Coprocess characteristics n'est disponible qu'avec le kit de développement Java (JDK) Dragonwell.
Tool
Définissez le Log Directory, le nombre de Total Files et la File Size pour les journaux du GC. Indiquez également le Dump File Path à utiliser en cas d'erreur de mémoire insuffisante.
Service Registration and Discovery
Sélectionnez cette option pour utiliser un registre Nacos autogéré. À défaut, le système utilise automatiquement le registre partagé d'EDAS.
Custom
Si les paramètres précédents ne suffisent pas, ajoutez des paramètres personnalisés séparés par des espaces.
ImportantL'application redémarre après le clic sur OK. Nous vous recommandons d'effectuer cette opération pendant les heures creuses.
Vérifier le résultat
-
Méthode 1
Dans le volet de navigation de gauche de la page de détails de l'application, cliquez sur Change List pour consulter les détails du changement. Si la colonne Change Status affiche Succeeded, l'application est déployée et la configuration est effective.
-
Méthode 2
Sur la page Application Overview, cliquez sur Running Pods (Click View) en regard de Running Status. Dans le panneau qui s'ouvre, sous la section Pod, examinez la colonne Status du pod. Un point vert confirme que l'application est en cours d'exécution, ce qui atteste du bon déroulement du déploiement et de la prise en compte de la configuration.