|
|
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
Добрый день! Пишу абстрактного робота, который состоит из нескольких потоков каждый из которых ползает в базу и выполняет некоторые действия. Задумался над тем как этого робота лучше задеплоить. В виде простого exe'ника добавленного в автозагрузку винды или в виде виндовой службы. Отсюда возник вопрос - в чем достоинство развертывания своего приложения именно в виде виндовой службы ? С ними можно огрести некоторый геморой с деплоем(со стороны реестра винды), но вроде как концептуально более верно если робот будет висеть в службах(вот только обосновать не могу). Может быть службу проще администрировать ? Может есть некие внешние средства по отлавливанию эксепшенов в службе ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 10:49 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
Основное преимущество, что службы работают независимо от пользователя, который может и забыть войти в систему. Базы данных, кстати, тоже обычно стартуют как службы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 11:22 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
wadman, насколько это актуально в случае деплоя на сервере ? Я пока не особо представляю как буду запускать свой сервис... Однако точно что запускаться он будет не на локалке а на неком сервере приложений. Да и вообще не вижу я в этом преимущества. Можете расписать почему это вообще актуально ? И я бы отметил тот факт что в случае работы службы с базами данных - запускаться она должна в контексте пользователя, который с одной стороны должен иметь права на выполнение службы и в тоже время права на доступ к базе(для trust подключения), что так-же является траблом. Т.е. в случае exe-ника я его могу запустить в контексте пользователя с минимальными правами в системе, но с правами на базу, а это плюс, т.к. гарантированно приложение не сможет ломать систему. Или я в чем-то ошибаюсь ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 12:14 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
ExpromentИ я бы отметил тот факт что в случае работы службы с базами данных - запускаться она должна в контексте пользователя, который с одной стороны должен иметь права на выполнение службы и в тоже время права на доступ к базе(для trust подключения), что так-же является траблом. Т.е. в случае exe-ника я его могу запустить в контексте пользователя с минимальными правами в системе, но с правами на базу, а это плюс, т.к. гарантированно приложение не сможет ломать систему. Или я в чем-то ошибаюсь ? сама субд запускается как служба ExpromentОднако точно что запускаться он будет не на локалке а на неком сервере приложений сервер приложений сам перезапустит ваш екзешник в случае его падения? если да, то разницы нет никакой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 12:32 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
ExpromentОднако точно что запускаться он будет не на локалке а на неком сервере приложений. Обычно на сервере в принципе не работают пользователи, а лишь админы и весьма редко. Так что без службы не обойтись. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 13:09 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
Отсюда возник вопрос - в чем достоинство развертывания своего приложения именно в виде виндовой службы ? В смысле производительности достоинств нет. Даже наоборот. Есть достоинства в возможности запускаться при включении машины без входа пользователя в сеанс. Но на самом деле сейчас есть RunAsService, или что-то в этом роде, оно может как сервис запускать любую (консольную) программу. Может быть службу проще администрировать ? Безусловно, проще. Может есть некие внешние средства по отлавливанию эксепшенов в службе ? нет, всё то же, что и в обычном приложении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 13:39 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
Expromentwadman, насколько это актуально в случае деплоя на сервере ?КРИТИЧНО. Подавляющее большинство серверов работает вообще без аутентификации на консоли хоть какого-то юзера. Expromentв случае работы службы с базами данных - запускаться она должна в контексте пользователя, который с одной стороны должен иметь права на выполнение службы и в тоже время права на доступ к базе(для trust подключения), что так-же является траблом. Т.е. в случае exe-ника я его могу запустить в контексте пользователя с минимальными правами в системе, но с правами на базу, а это плюс, т.к. гарантированно приложение не сможет ломать систему. Или я в чем-то ошибаюсь ? За каким хреном службе контекст локального пользователя? И за каким хреном этот контекст абстрактному роботу - что он там такого находит? службе вообще интерфейс не нужен - а если нужен (для управления там или логирования), то для этой цели делается взаимодействующая со службой клиентская часть - вот она уже работает в контексте конкретного пользователя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 13:45 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
ExpromentПишу абстрактного робота, который состоит из нескольких потоков каждый из которых ползает в базу и выполняет некоторые действия. Задумался над тем как этого робота лучше задеплоить. В виде простого exe'ника добавленного в автозагрузку винды или в виде виндовой службы. Делей в виде службы. Это полезный skill. Заодно твой робот получит пряники в виде опции авто-старта или dependency от других служб. Это разумно. А пока идёт отладка и разработка робота можно запускать просто как exeшник в консоли. Так и отладка проще и "рубить под корень" процесс удобнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 17:58 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
mayton, А пока идёт отладка и разработка робота можно запускать просто как exeшник в консоли. Так и отладка проще и "рубить под корень" процесс удобнее. и так и оставить - плюс визуализации тоже чего то стоит.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 18:00 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
dvimmayton, А пока идёт отладка и разработка робота можно запускать просто как exeшник в консоли. Так и отладка проще и "рубить под корень" процесс удобнее. и так и оставить - плюс визуализации тоже чего то стоит.... Если-б оно так было то и MSSQl, IIS делали-бы консольными апликухами. Но у MS определённо есть своя концепция или своё видение как создавать процессы-демоны. И если в линухе это простая задачка то в MS подошли с другой стороны.Мне вобщем нравится что есть консоль управления сервисами. Это скорее хорошо чем плохо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 18:08 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
dvimи так и оставить - плюс визуализации тоже чего то стоит....Ага... среда, три часа ночи, МС апдейт отрабатывает и по итогам отправляет сервер в ребут, а админ придёт только утром, и до этого момента все удалённые пользователи сосут кому что досталось, ибо некому залогиниться на консоли и запустить ппц какой нужный для удалённого доступа к данным модуль визуализации работы абстрактного робота. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 18:14 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
AkinaАга... среда, три часа ночи, МС апдейт отрабатывает и по итогам отправляет сервер в ребут Обычно в суровых конторах Админ контролирует доступность обновлений. Ну по крайней мере "внезапно" (!) в ребут сервера не уходят. Обновления - это плановые работы. И о них все предупреждены. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 18:21 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
MasterZivНо на самом деле сейчас есть RunAsService этому костылю 300 лет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 22:17 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
ИзопропилMasterZivНо на самом деле сейчас есть RunAsService этому костылю 300 лет Ну дык.. он работает? В семёрке там... в x64 ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2013, 00:15 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
maytonНу дык.. он работает? В семёрке там... в x64 ? а куда он из колеи денется? несколько строк написать для получения полноценного сервиса - не вижу проблем. Параметрами в командной строке удобно указывать режим исполения - сервис/интерактивный/установка сервиса/удаление сервиса ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2013, 00:31 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
Еще можно написать робота в виде драйвера нулевого кольца и работать из режима ядра. Получишь профит и скилл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2013, 17:22 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
От сервис менеджера польза дополнительная в автоматических запусках после краха сервиса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2013, 17:23 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
Артем_84О1т сервис менеджера польза дополнительная в автоматических запусках после краха сервиса. Да. В качестве некой простой логики failover в службах заложен механизм restart service after X minutes, reset fail counter after Y days. И различные хендлеры на сбой первого старта, второго. Кодить это всё в autorun-скриптах или в коде самого приложения - вобщем-то геморрно и налицо какой-то duplicate code антипаттерн. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2013, 19:06 |
|
||
|
В чем преимущества windows служб
|
|||
|---|---|---|---|
|
#18+
maytonИзопропилпропущено... этому костылю 300 лет Ну дык.. он работает? В семёрке там... в x64 ? Ну, например, в 3.5 и NT его не было... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2013, 09:48 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=38466811&tid=1341582]: |
0ms |
get settings: |
8ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
54ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 201ms |
| total: | 343ms |

| 0 / 0 |
