Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 39816|Répondre: 3

[.NET Core] Un service basé sur .NET Core sous Linux

[Copié le lien]
Publié le 29-10-2020 à 14:20:02 | | | |
.NET CORE 3.0 ajoute de nouveaux modèles de projets pour les services de travail, qui peuvent être utilisés pour écrire des services en arrière-plan de longue durée et les déployer facilement sous forme de services Windows ou de démons Linux. Si le vs2019 installé est la version chinoise, les Services aux travailleurs deviennent un rôle de travailleur (workers).

Environnement système Linux : CentOS 8 x64 bits

Créer un nouveau projet de Service aux Travailleurs

D’abord, ouvrir VS 2019 pour créer un nouveau projet de Service aux Travailleurs.



Services Linux, besoin d’ajouter :

Si c’est un service Windows, vous devrez ajouter :

Si vous voulez faire tourner un ensemble de programmes à plusieurs endroits, vous pouvez simplement installer deux paquets en même temps. Ensuite, dans CreateHostBuilder, ajoutez UseWindowsService() et UseSystemd().



La fonction implémentée par le projet est d’écrire des journaux dans le fichier /test/file.txt, et le code principal est le suivant :



Le code de tâche WriteFile est le suivant :

En raison de problèmes d’autorisation, le programme ne peut pas créer automatiquement le dossier /test, ce qui sera discuté ci-dessous.

Déploiement des services sur CentOS

OuiInstaller l’exécution du .NET Core(Excluant ASP.NET support Core)




Si vous souhaitez installer un runtime qui prend en charge ASP.NET Core, vous pouvez exécuter la commande suivante :

[racine@localhost~]# dotnet --list-runtimes
Microsoft.NETCore.App 3.1.7 [/usr/lib64/dotnet/shared/Microsoft.NETCore.App]


Créez un dossier /test et donnez les permissions suivantes :

Dans le dossier /etc/systemd/system, créez le fichier de configuration du service itsvse.service comme suit :

Ajoutez des comptes de service et créez des dossiers

Publiez et téléchargez Job.Service sur le répertoire serveur /home/dotnetuser/job, et publiez la configuration comme suit :



Allumez le service

Après le lancement du service, vous pouvez voir que vous pouvez écrire des fichiers normalement, comme montré dans la figure suivante :



Téléchargement du code source :

Touristes, si vous voulez voir le contenu caché de ce post, s’il vous plaîtRépondre


(Fin)




Précédent:ASP.NET WebApi utilise des MessageHandlers pour unifier le format du modèle d’interface de retour
Prochain:Service web API console basé sur HttpSelfHostServer
 Propriétaire| Publié le 30-10-2020 09:28:44 |
Exemple de sortie :
info : ExempleHébergéService[0]
//           1. StartAsync a été appelé.
info : ExempleHébergéService[0]
//           2. OnStarted a été appelé.
info : Microsoft.Hosting.Lifetime[0]
Candidature lancée. Appuyez sur Ctrl+C pour éteindre.
info : Microsoft.Hosting.Lifetime[0]
Environnement d’accueil : Production
info : Microsoft.Hosting.Lifetime[0]
Racine du contenu : .. \app-lifetime\bin\Debug\net5.0
info : ExempleHébergéService[0]
//           3. OnStopping a été appelé.
info : Microsoft.Hosting.Lifetime[0]
L’application est en train de se fermer...
info : ExempleHébergéService[0]
//           4. StopAsync a été appelé.
info : ExempleHébergéService[0]
//           5. OnStopped a été appelé.


 Propriétaire| Publié le 6-11-2020 à 13:53:00 |
cours de résumé public BackgroundService : IHostedService, IDisposable

L’interface IHostedService offre un moyen pratique de démarrer des tâches en arrière-plan dans ASP.NET applications web Core (dans .NET Core 2.0 et ultérieures) ou sur n’importe quel processus/hôte (à partir de .NET Core 2.1 utilisant IHost). Son principal avantage est que cela peut se faire lorsque l’hôte lui-même est sur le point de s’éteindreIl y a une chanceFaites une annulation normale pour nettoyer le code des tâches en arrière-plan.
 Propriétaire| Publié le 27-04-2021 à 15:57:28 |
Enregistrer la méthode d’extension de service backend

Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com