Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 41056|Antwoord: 3

[.NET Core] Een dienst gebaseerd op .NET Core op Linux

[Link kopiëren]
Geplaatst op 29-10-2020 14:20:02 | | | |
.NET CORE 3.0 voegt nieuwe projecttemplates toe voor Worker Services, die kunnen worden gebruikt om langlopende achtergrondservices te schrijven en eenvoudig te implementeren als Windows-services of Linux-daemons. Als de geïnstalleerde vs2019 de Chinese versie is, wordt Worker Services een werkerrol.

Linux-systeemomgeving: CentOS 8 x64-bit

Maak een nieuw Worker Service-project aan

Ten eerste, open VS 2019 om een nieuw Worker Service-project te creëren.



Linux-diensten, moeten toevoegen:

Als het een Windows-dienst is, moet je toevoegen:

Als je een set programma's op meerdere plekken wilt draaien, kun je gewoon twee pakketten tegelijk installeren. Voeg vervolgens in CreateHostBuilder UseWindowsService() en UseSystemd() toe.



De functie die het project implementeert, is om logs te schrijven naar het /test/file.txt-bestand, en de hoofdcode is als volgt:



De WriteFile-taakcode is als volgt:

Vanwege toestemmingsproblemen kan het programma de /test-map niet automatisch aanmaken, wat hieronder besproken zal worden.

Deploy services naar CentOS

JaInstalleer de .NET Core runtime(Exclusief ASP.NET Core-ondersteuning)




Als je een runtime wilt installeren die ASP.NET Core ondersteunt, kun je het volgende commando uitvoeren:

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


Maak een /test-map aan en geef als volgt machtigingen:

Onder de map /etc/systemd/system maakt u het itsvse.service serviceconfiguratiebestand aan als volgt:

Voeg serviceaccounts toe en maak mappen aan

Publiceer en upload Job.Service naar de server /home/dotnetuser/job directory, en publiceer de configuratie als volgt:



Zet de dienst aan

Nadat de service is gestart, zie je dat je normaal bestanden kunt schrijven, zoals te zien is in de volgende figuur:



Broncode downloaden:

Toeristen, als jullie de verborgen inhoud van dit bericht willen zien, alsjeblieftAntwoord


(Einde)




Vorig:ASP.NET WebApi gebruikt MessageHandlers om het returninterfacemodelformaat te unificeren
Volgend:HttpSelfHostServer-gebaseerde console web API-service
 Huisbaas| Geplaatst op 30-10-2020 09:28:44 |
Voorbeelduitvoer:
info: ExampleHostedService[0]
//           1. StartAsync is gebeld.
info: ExampleHostedService[0]
//           2. OnStarted is gebeld.
info: Microsoft.Hosting.Lifetime[0]
Aanmelding gestart. Druk op Ctrl+C om af te sluiten.
info: Microsoft.Hosting.Lifetime[0]
Hostingomgeving: Productie
info: Microsoft.Hosting.Lifetime[0]
Inhoudswortelpad: .. \app-lifetime\bin\Debug\net5.0
info: ExampleHostedService[0]
//           3. OnStopping is gebeld.
info: Microsoft.Hosting.Lifetime[0]
De applicatie wordt gesloten...
info: ExampleHostedService[0]
//           4. StopAsync is gebeld.
info: ExampleHostedService[0]
//           5. OnStopped is gebeld.


 Huisbaas| Geplaatst op 06-11-2020 13:53:00 |
publieke abstracte klasse BackgroundService : IHostedService, IDisposable

De IHostedService-interface biedt een handige manier om achtergrondtaken te starten in ASP.NET Core webapplicaties (in .NET Core 2.0 en later) of op elk proces/host (beginnend met .NET Core 2.1 met IHost). Het grootste voordeel is dat het kan gebeuren wanneer de host zelf op het punt staat uit te schakelenEr is een kansMaak een normale canceling om de code voor achtergrondtaken op te schonen.
 Huisbaas| Geplaatst op 27-04-2021 15:57:28 |
Registreer de backend service-extensiemethode

Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com