O .NET CORE 3.0 adiciona novos modelos de projeto para Worker Services, que podem ser usados para escrever serviços em segundo plano de longa duração e facilmente implantá-los como serviços Windows ou daemons Linux. Se o vs2019 instalado for a versão chinesa, Serviços ao Trabalhador passa a ser uma função de trabalhador.
Ambiente de sistema Linux: CentOS 8 x64-bit
Criar um novo projeto de Serviço ao Trabalhador
Primeiro, abrir o VS 2019 para criar um novo projeto de Serviço ao Trabalhador.
Serviços Linux, preciso adicionar:
Se for um serviço Windows, você precisará adicionar:
Se você quiser rodar um conjunto de programas em vários lugares, pode simplesmente instalar dois pacotes ao mesmo tempo. Em seguida, no CreateHostBuilder, adicione UseWindowsService() e UseSystemd().
A função implementada pelo projeto é escrever logs no arquivo /test/file.txt, e o código principal é o seguinte:
O código da tarefa do WriteFile é o seguinte:
Devido a questões de permissões, o programa não pode criar automaticamente a pasta /test, o que será discutido abaixo.
Implantar serviços para o CentOS
SimInstale o runtime do .NET Core(Excluindo ASP.NET suporte Core)
Se você quiser instalar um runtime que suporte ASP.NET Core, pode executar o seguinte comando:
[raiz@localhost~]# dotnet --list-runtimes Microsoft.NETCore.App 3.1.7 [/usr/lib64/dotnet/shared/Microsoft.NETCore.App]
Crie uma pasta /test e conceda as permissões da seguinte forma:
Na pasta /etc/systemd/system, crie o arquivo de configuração do serviço itsvse.service da seguinte forma:
Adicionar contas de serviço e criar pastas
Publique e envie o Job.Service para o servidor /home/dotnetuser/job directory e publique a configuração da seguinte forma:
Ligue o serviço
Após o início do serviço, você pode ver que pode escrever arquivos normalmente, como mostrado na figura a seguir:
Código fonte para download:
Turistas, se quiserem ver o conteúdo oculto deste post, por favor Resposta
(Fim)
|