Selon vos exigences en termes de trafic et de traitement, vous devrez peut-être modifier la taille de la mémoire du tas de mémoire ou de la taille des métadonnées de classe pour vos nœuds exécutant des composants Private Cloud basés sur Java.
Cette section présente les tailles de mémoire par défaut et celles recommandées pour les segments de mémoire Java, ainsi que le processus de modification des valeurs par défaut. Enfin, cette section explique comment modifier d'autres paramètres JVM à l'aide de fichiers de propriétés.
Tailles de mémoire par défaut et recommandées pour les segments de mémoire
Le tableau suivant répertorie les tailles de mémoire par défaut et recommandées pour les segments de mémoire Java pour les composants Private Cloud basés sur Java:
Composant | Nom du fichier de propriétés | Par défaut Taille du tas de mémoire |
Recommandé Taille de tas de mémoire |
---|---|---|---|
Runtime (durée d'exécution) | |||
Cassandra | N/A | Automatiquement1 | Automatiquement1 |
Processeur de messages | message‑processor.properties |
512 Mo | Entre 3 Go et 6 Go2 |
Routeur | router.properties |
512 Mo | 512 Mo |
Analytics | |||
Serveur Postgres | postgres‑server.properties |
512 Mo | 512 Mo |
Serveur Qpid | qpid‑server.properties |
512 Mo | Entre 2 Go et 4 Go |
Gestion | |||
Serveur de gestion | management‑server.properties |
512 Mo | 512 Mo |
UI | ui.properties |
512 Mo | 512 Mo |
OpenLDAP | N/A | Application native3 | Application native3 |
ZooKeeper | zookeeper.properties |
2 048 Mo | 2 048 Mo |
Remarques | |||
1 Cassandra calcule dynamiquement la taille maximale du tas de mémoire au démarrage. Actuellement, cela représente la moitié de la mémoire système totale, avec un maximum de 8 192 Mo. Pour en savoir plus sur la définition de la taille du tas de mémoire, consultez Modifier la taille de la mémoire du tas de mémoire. |
|||
2 Pour les processeurs de messages, Apigee vous recommande de définir la taille du tas de mémoire sur une valeur comprise entre 3 Go et 6 Go. N'augmentez la taille des tas de mémoire au-delà de 6 Go qu'après avoir effectué des tests de performances.
Si l'utilisation du tas de mémoire s'approche de la limite maximale lors de vos tests de performances, augmentez-la. Pour en savoir plus sur la définition de la taille du tas de mémoire, consultez Modifier la taille de la mémoire du tas de mémoire. |
|||
3 Tous les composants de cloud privé ne sont pas implémentés en Java. Étant donné qu'elles ne sont pas basées sur Java, les applications exécutées en mode natif sur la plate-forme hôte ne présentent pas de tailles de segments de mémoire Java configurables. Elles s'appuient sur le système hôte pour la gestion de la mémoire. |
Pour déterminer la quantité totale de mémoire qu'Apigee recommande d'allouer à vos composants Java sur un nœud, ajoutez les valeurs indiquées ci-dessus pour chaque composant de ce nœud. Par exemple, si votre nœud héberge à la fois les serveurs Postgres et Qpid, Apigee recommande une allocation de mémoire combinée entre 2,5 Go et 4,5 Go.
Pour obtenir la liste du matériel requis (tel que la RAM), consultez la section Configuration requise.
Modifier la taille de la mémoire du tas de mémoire
Pour modifier les paramètres des segments de mémoire, modifiez le fichier de propriétés du composant. Par exemple, pour le processeur de messages, modifiez le fichier /opt/apigee/customer/application/message-processor.properties
.
Si le fichier message-processor.properties
n'existe pas ou si le fichier .properties
correspondant à un composant Edge n'existe pas, créez-le, puis transférez la propriété du fichier à l'utilisateur "apigee", comme le montre l'exemple suivant:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
Si le composant est installé sur plusieurs machines, telles que le processeur de messages, vous devez modifier le fichier de propriétés sur toutes les machines hébergeant le composant.
Le tableau suivant répertorie les propriétés que vous modifiez pour modifier la taille des segments de mémoire:
Propriété | Description |
---|---|
bin_setenv_min_mem |
Taille minimale du tas de mémoire. La valeur par défaut est basée sur les valeurs répertoriées dans la section Tailles de mémoire par défaut et recommandées pour les segments de mémoire. Ce paramètre correspond à l'option Java |
bin_setenv_max_mem |
Taille maximale du tas de mémoire. La valeur par défaut est basée sur les valeurs répertoriées dans la section Tailles de mémoire par défaut et recommandées pour les segments de mémoire. Ce paramètre correspond à l'option Java |
bin_setenv_meta_space_size |
Taille par défaut des métadonnées de classe. La valeur par défaut est définie sur Ce paramètre correspond à l'option Java |
Lorsque vous définissez des propriétés de taille de tas de mémoire sur un nœud, utilisez le suffixe "m" pour indiquer des mégaoctets, comme le montre l'exemple suivant:
bin_setenv_min_mem=4500m bin_setenv_max_mem=4500m bin_setenv_meta_space_size=1024m
Une fois les valeurs définies dans le fichier de propriétés, redémarrez le composant:
/opt/apigee/apigee-service/bin/apigee-service component restart
Exemple :
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Modifier d'autres propriétés JVM
Pour les paramètres Java non contrôlés par les propriétés répertoriées ci-dessus, vous pouvez également définir les éléments suivants dans le fichier de propriétés correspondant pour tout composant Edge:
bin_setenv_ext_jvm_opts
: définissez une propriété Java non spécifiée par d'autres propriétés. Par exemple :bin_setenv_ext_jvm_opts=-XX:MaxGCPauseMillis=500
Toutefois, n'utilisez pas
bin_setenv_ext_jvm_opts
pour définir-Xms
,-Xmx
ou-XX:MetaspaceSize
, car ces valeurs sont contrôlées par les propriétés répertoriées ci-dessus.
Pour obtenir des conseils supplémentaires sur la configuration de la mémoire pour les composants de cloud privé, consultez cet article sur les forums Edge.