Problèmes de processus GPU dans IronPDF : Solutions

This article was translated from English: Does it need improvement?
Translated
View the article in English
[0110/094441.173:ERROR:network_service_instance_impl.cc(521)] Network service crashed, restarting service.
[0110/094442.261:ERROR:gpu_process_host.cc(990)] GPU process exited unexpectedly: exit_code=255
[0110/094442.261:WARNING:gpu_process_host.cc(1337)] The GPU process has crashed 3 time(s)
[0110/094442.261:FATAL:gpu_data_manager_impl_private.cc(440)] GPU process isn't usable. Goodbye.

Si vous rencontrez une erreur similaire à celle ci-dessus en utilisant IronPDF, surtout lors du déploiement sur Azure, vous n'êtes pas seul. Cette erreur est connue pour faire planter l'application et est généralement liée au IronCefSubprocess.exe situé dans le dossier des runtimes, qui est un composant crucial d'IronPDF.

Causes possibles

Plusieurs facteurs peuvent entraîner cette erreur de processus GPU. Voici quelques-unes des causes les plus fréquentes :

  1. Autorisations d'exécution manquantes pour IronCefSubprocess

    Le fichier IronCefSubprocess.exe doit avoir les permissions d'exécution pour qu'IronPDF puisse initialiser correctement la classe ChromePdfRenderer.

  2. Étapes incorrectes de déploiement Azure

    Les processus de déploiement pour IronPDF diffèrent entre Linux et Windows sur Azure. Suivre les mauvaises étapes peut déclencher cette erreur.

  3. Dépendances DLL manquantes

    L'exécution de IronCefSubprocess.exe nécessite certains fichiers DLL. Les DLL manquantes, particulièrement dans les environnements non-Windows, peuvent causer l'échec du processus.

Solution

Environnement Local

Si vous rencontrez cette erreur localement, essayez les étapes suivantes :

  1. Désactiver le mode GPU

    Ajoutez la ligne suivante à votre code pour désactiver le mode GPU pour IronPDF :

IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled
$vbLabelText   $csharpLabel
  1. Accorder les autorisations d'exécution

    Assurez-vous que IronCefSubprocess.exe dispose des permissions d'exécution. Pour les systèmes Linux, utilisez la commande suivante :

chmod 755 IronCefSubprocess 
# You may need to specify an exact path
# IronCefSubprocess is typically found at bin/runtimes/linux-x64/
# chmod 755 /bin/runtimes/linux-x64/native/IronCefSubprocess
# in some cases you may need to use chmod 777 .
chmod 755 IronCefSubprocess 
# You may need to specify an exact path
# IronCefSubprocess is typically found at bin/runtimes/linux-x64/
# chmod 755 /bin/runtimes/linux-x64/native/IronCefSubprocess
# in some cases you may need to use chmod 777 .
SHELL
  1. Vérifier les DLL manquantes

    Si les étapes ci-dessus ne résolvent pas le problème, exécutez manuellement IronCefSubprocess.exe pour vérifier les DLL manquantes. Le système affichera une boîte d'erreur indiquant la DLL manquante. Installez la DLL requise et relancez l'application.

Déploiement Azure

Si l'erreur survient après le déploiement de votre application sur Azure, suivez ces étapes :

  1. Utilisez ZipDeploy

    Déployez votre application en utilisant ZipDeploy pour garantir que tous les fichiers sont correctement emballés.

  2. Décochez Exécuter à partir du fichier de package

    Assurez-vous que l'option Exécuter à partir d'un fichier de package est décochée lors du déploiement.

  3. Containeriser pour Linux

    Si votre application est destinée à un environnement Linux, envisagez de la containeriser en utilisant Docker avant de la déployer sur Azure. Consultez le Guide de configuration Docker pour des instructions détaillées.

  4. Activer le mode processus unique

    Ajoutez le code suivant pour forcer IronPDF à s'exécuter en mode processus unique :

IronPdf.Installation.SingleProcess = true;
IronPdf.Installation.SingleProcess = true;
IronPdf.Installation.SingleProcess = True
$vbLabelText   $csharpLabel

Si aucune des solutions ci-dessus ne résout le problème, veuillez soumettre une Demande d'ingénierie pour obtenir de l'aide personnalisée.