Создание универсального сервиса на .NET Core
Вставка
- Опубліковано 8 лют 2025
- В современных комплексных решениях, как правило, возникает потребность в выполнении различных фоновых задач длительных по времени. Сейчас мир разработки заполонил REST, который является архитектурным стилем для веб приложений и служб, но в вебе есть определенные ограничения, накладываемые этим архитектурным стилем и самим принципом работы веб-запросов, которые не позволяют в полной мере выполнять какие-то сложные вычислительные задачи на стороне сервиса. Поэтому возникает целесообразность разработки сервисов для оброботки информации.
Сложность в том, что сервисы как правило ориентированы на определенную платформу (Windows службы, Веб службы, Демоны). Но есть возможность создавать универсальные службы с использованием .NET Core, которые будут работать на разных платформах.
На этом вебинары мы рассмотрим принципы построения и назначение служб, а также как создать универсально работающую службу для выполнения отложенных задач.
Материалы курса:
github.com/Kos...
drive.google.c...
Полезные ссылки и источники:
docs.microsoft...
docs.microsoft...
docs.microsoft...
www.stevejgord...
www.stevejgord...
Создание проекта 20:23
Добавление класса сервиса 42:30
Пробный запуск сервиса 1:02:30
Огромное спасибо. Отличный урок.
В целом полезно, приятно было посмотеть, спасибо.
Но есть нюансы (по крайней мере я так понимаю) :)
Framework i Core - две разные имплементации .netstandard.
В .net core мы по умолчанию получаем сильный boost производительности, т.к. все основные вещи там заимплементированны более оптимально (в release notes можно посмотреть).
Получается, что при таком подходе, когда выставляем сервис из framework-овой .dll, теряем все приемущества .net core :(
Пачка Microsoft.Windows.Compatibility
в помощь (при использовании в Windows)
P.S. ну и использование Monitor без try-finally ... по попе а-та-та :)
Все таки перезапуск студии помог и проект собрался без изменений под фреймворк 4.7.1
Хороший вебинар
В @#! трех километровый конструктор))) Прям до слез ))Жизненно. ))) Спасибо не я один такой )))
В одном прод проекте я видел как чувак упоролся в имьютабл и у класса был конструктор на строк 30 в ширину экрана
"Материалы вебинара пока недоступны"
Ждем.
Здравствуйте, материалы и полезные ссылки были добавлены в описание.
Запись файла через StreamWriter упорядочить примитивом синхронизации, например lock(){}
В .NET Core 3 .exe файл автоматов собирается. Теперь не надо мудрить с настройкой конфигурации
01:01:30 Нужно ещё try finally
Если хотите есть фоточка, посмотрите на мое лицо))) Жжешь))