Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 39816|Antwort: 3

[.NET Core] Ein Dienst auf Basis von .NET Core unter Linux

[Link kopieren]
Veröffentlicht am 29.10.2020, 14:20:02 | | | |
.NET CORE 3.0 fügt neue Projektvorlagen für Worker Services hinzu, mit denen langlaufende Hintergrunddienste geschrieben und einfach als Windows-Dienste oder Linux-Daemons bereitgestellt werden können. Wenn der installierte vs2019 die chinesische Version ist, wird Worker Services zur Worker-Rolle.

Linux-Systemumgebung: CentOS 8 x64-Bit

Erstelle ein neues Worker Service-Projekt

Zuerst VS 2019 öffnen, um ein neues Worker Service-Projekt zu erstellen.



Linux-Dienste, muss hinzugefügt werden:

Wenn es sich um einen Windows-Dienst handelt, musst du hinzufügen:

Wenn du eine Reihe von Programmen an mehreren Orten ausführen möchtest, kannst du einfach zwei Pakete gleichzeitig installieren. Als Nächstes fügen Sie in CreateHostBuilder UseWindowsService() und UseSystemd() hinzu.



Die vom Projekt implementierte Funktion besteht darin, Logs in die /test/file.txt-Datei zu schreiben, und der Hauptcode ist wie folgt:



Der WriteFile-Aufgabencode ist wie folgt:

Aufgrund von Berechtigungsproblemen kann das Programm den /test-Ordner nicht automatisch erstellen, was im Folgenden besprochen wird.

Dienste auf CentOS bereitstellen

JaInstallieren Sie die .NET Core Laufzeitumgebung(Ausgenommen ASP.NET Core-Support)




Wenn Sie eine Laufzeit installieren möchten, die ASP.NET Core unterstützt, können Sie folgenden Befehl ausführen:

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


Erstelle einen /test-Ordner und gib folgende Berechtigungen an:

Unter dem Ordner /etc/systemd/system erstellen Sie die itsvse.service Service-Konfigurationsdatei wie folgt:

Servicekonten hinzufügen und Ordner erstellen

Veröffentlichen und laden Sie Job.Service in das Serververzeichnis /home/dotnetuser/job hoch und veröffentlichen Sie die Konfiguration wie folgt:



Schalten Sie den Dienst ein

Nachdem der Dienst gestartet ist, sehen Sie, dass Sie Dateien normal schreiben können, wie in der folgenden Abbildung gezeigt:



Quellcode-Download:

Touristen, wenn ihr den versteckten Inhalt dieses Beitrags sehen wollt, bitteAntwort


(Ende)




Vorhergehend:ASP.NET WebAPI verwendet MessageHandler, um das Format des Rückgabe-Schnittstellenmodells zu vereinheitlichen
Nächster:Konsolen-Web-API-Dienst auf Basis von SelfHostServer
 Vermieter| Veröffentlicht am 30.10.2020 09:28:44 |
Beispielausgabe:
Info: ExampleHostedService[0]
//           1. StartAsync wurde aufgerufen.
Info: ExampleHostedService[0]
//           2. OnStarted wurde aufgerufen.
Info: Microsoft.Hosting.Lifetime[0]
Bewerbung begann. Drücke Strg+C, um herunterzufahren.
Info: Microsoft.Hosting.Lifetime[0]
Hosting-Umgebung: Produktion
Info: Microsoft.Hosting.Lifetime[0]
Inhaltswurzelpfad: .. \app-lifetime\bin\Debug\net5.0
Info: ExampleHostedService[0]
//           3. OnStopping wurde aufgerufen.
Info: Microsoft.Hosting.Lifetime[0]
Die Anwendung wird geschlossen...
Info: ExampleHostedService[0]
//           4. StopAsync wurde aufgerufen.
Info: ExampleHostedService[0]
//           5. OnStopped wurde angerufen.


 Vermieter| Veröffentlicht am 6.11.2020, 13:53:00 |
öffentliche abstrakte Klasse BackgroundService : IHostedService, IDisposable

Die IHostedService-Schnittstelle bietet eine bequeme Möglichkeit, Hintergrundaufgaben in ASP.NET Core-Webanwendungen (ab .NET Core 2.0) oder auf jedem Prozess/Host (beginnend mit .NET Core 2.1 unter Verwendung von IHost) zu starten. Der Hauptvorteil ist, dass es möglich ist, wenn der Host selbst kurz davor ist, herunterzufahren.Es gibt eine ChanceMach eine normale Stornierung, um den Code für Hintergrundaufgaben zu bereinigen.
 Vermieter| Veröffentlicht am 27.4.2021, 15:57:28 |
Registrieren Sie die Backend-Service-Erweiterungsmethode

Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com