powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / В чем разница между службами и приложениями?
25 сообщений из 77, страница 1 из 4
В чем разница между службами и приложениями?
    #39883070
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сабж
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883075
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoview,
Ты наверно про сервисы а не про службы.
И наверно именно про вин сервисы?
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883079
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharplisttoview,
Ты наверно про сервисы а не про службы.
И наверно именно про вин сервисы?
да
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883089
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoview,
Разница:
Повышенные права, постоянно запущен, регистрация реестре, логи в журнал Оси, икока в трее,...
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883103
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Фактически, у них нет ничего общего. Они пишутся по совершенно разным принципам.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883104
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpПовышенные права, постоянно запущен, регистрация реестре, логи в журнал Оси, икока в трее,...
1. как правило
2. не обязательно
3. не обязательно (только служебная часть, относящаяся к SCM, настройки можешь хранить в файле на диске или в сети)
4. не обязательно
5. чушь
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883110
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cerebrum,
Конечно вы правы и дерево можно всегда свести к одной палке без веток.
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883112
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cerebrumне обязательно (только служебная часть, относящаяся к SCM, настройки можешь хранить в файле на диске или в сети)а я про настройки ничего не говорил.
Поэтому Обязательно.
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883121
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovФактически, у них нет ничего общего. Они пишутся по совершенно разным принципам
ну, это как сказать...
и то и другое является, в первую очередь, приложением, так что функция main есть и там и там

Разница скорее в том, что к качеству кода служб требования обычно повыше, особенно к тем, которые должны работать 24*7*365

listtoview,

Служба отличается от обычного приложения тем, что ее состоянием, обычно, рулит не пользователь, а специальная подсистема ОС - Service Control (или Center, запамятовал) Manager (SCM). Из-за чего к службам предъявляются определенные требования. Например, разработчик службы должен обеспечить специальную точку входа, которую сможет найти SCM, т.е. обычной main - функции тут недостаточно. Также нужно правильно взаимодействовать с SCM и слушать его команды, например, если администратор полез в оснастку службы и нажал кнопку Стар/Стоп/Пауза или запросил перезапуск, то служба обязана адекватно на это реагировать иначе SCM резко прикроет твою лавочку. В приложении ты сам царь и бог, можешь игнорить все команды из вне, если тебе они не интересны.

Службы отличаются от обычных приложений еще и тем, что они, в большей своей массе, рассчитаны на обработку запросов от множества клиентов. А приложение, которое не является службой, как правило, на работу с одним пользователем в интерактивном сеансе. Например, MS SQL Server - это набор служб (сам сервер, агент, различные брокеры и прочие службы), а приложение для работы с базами SQL Server Management Studio является клиентом этих служб.

Службы начинают свою работу одновременно с запуском ОС и прекращают вместе с завершением работы ОС. Хотя это не является обязательным и службу можно запускать и останавливать руками, если ты администратор или пользователь, наделенный соответствующими полномочиями. Если пользователь завершил работу в сеансе, но компьютер не выключил, служба продолжит свою работу. С обычным приложением, запущенным в интерактивном сеансе, такой трюк не прокатит. Именно этим и ценны службы, их можно использовать как серверы для клиентских приложений, которые всегда готовы к работе и не зависят от кол-ва народу залогинившегося на комп. То есть службы живут по принципу: включил комп и никуда логиниться не нужно, служба сама запуститься, после загрузки ОС. Если служба упала, то администратору достаточно просто перезапустить удаленный хост или настроить автоматический запуск службы в случае аварийного завершения ее работы, чего опять в обычном приложении не предусмотренно.

Короче, в сети по службам инфы вагон, почитай хотя бы того же Рихтера - Программирование серверных приложений для Windows 2000
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883123
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpПоэтому Обязательно.
обязательная часть тоже является настройками службы, разве нет

Сойдемся на том, что есть служебная часть данных, которая обязана быть в реестре и опциональная, которую реализует разработчик самостоятельно на свой вкус и цвет. Службная часть - обязательна и она в реестре, опциональная - где угодно, куда хватит у службы прав дотянуться
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883126
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cerebrumобязана быть в реестреда. Я об этом.
Удачи!
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883130
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавлю, что ВИН сервис часто в локалке выступает альтернативой ВЕБ сервису. Когда на порту висит.
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883131
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cerebrumобычной main - функции тут недостаточно

Достаточно. Но первое и единственное, что она должна сделать, это вызвать
StartServiceCtrlDispatcher, который из себя уже вызовет всё остальное.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883136
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovДостаточно. Но первое и единственное, что она должна сделать, это вызвать
StartServiceCtrlDispatcher, который из себя уже вызовет всё остальное.
Недостаточная достаточность какая-то...


не знаю зачем я это пишу, ведь мы с вами и так прекрасно понимаем как все это работает, но все же, для понимания ТС, думаю будет полезно прояснить о чем идет речь.

У службы есть собственная ServiceMain ф-ция и, если не подготовить необходимое окружение для ее работы в main, то SCM тупо не найдет способа взаимодействия со службой. Нельзя просто так взять (с) и начать писать код в main, как в обычном приложении - это не прокатит. Сначала нужно соблюсти определенный обязательный ритуал по подготовке приложения для работы в качестве службы под управлением SCM.

У служб есть еще одно интересное отличие от приложений: в одном исполняемом файле их может быть много.
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883138
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CerebrumУ службы есть собственная ServiceMain ф-ция

Но она не является ни точкой входа, ни экспортируемой функцией. Это обычный callback. (И
может иметь любое имя.)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883141
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

я знаю

мне все нужно рассказать о службах новичку за раз?
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883147
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cerebrumмне все нужно рассказать о службах новичку за раз?

А зачем ему вообще что-то рассказывать о службах? Он про отличие их от приложений спросил.
И мы таки совместными усилиями выяснили, что из общего у них - только функция с названием
main(), да и та - исключительно из-за эхотага.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883160
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В линуксах попроще будет. Подход Windows выглядит вобщем ... как переусложнение простых вещей.
Да у них многое переусложнено. Даже концепция файловой системы.
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883188
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можно создать службу, которая у каждого пользователя будет своя?
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883194
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoviewА можно создать службу, которая у каждого пользователя будет своя?
Посмотри на Windows с точки зрения юзкейса. Как пользователь заходит?
Классический клиент? Это один подход. Работает обычно (99%) каждый пользователь эксклюзивно
с операционкой и десктопом. Другой подход RDP. Для серваков только. На 1 физической винде пасутся
сотни пользовательских сеансов. Как они будут взаимодействовать с 1 сервисом? Что сервис будет делать?
Как он их будет различать? Сервис вообще связан с shared-ресурсами. Базы данных. Вычисления. Сеть.

Может при таком много-пользовательском подходе тебе нужно делать упор именна на приложение а не сервис?
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883203
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoviewА можно создать службу, которая у каждого пользователя будет своя?
а смысл?

Служба, в идеале, не должна вообще как-то интерактивно взаимодействовать с пользоватем (показывать ему окошки и прочее).

Если тебе нужно делать что-то при входе/выходе в систему одних пользователей и не делать этого при входе/выходе других, то можно научить службу слушать события входов/выходов пользователей на этом компе и реагировать на это нужным образом. Тогда при входе пользователя, служба могла бы сравнивать его аккаунт с аккаунтами нужных пользователей в определенной тобой группе безопасности и, если пользователь входит в эту группу, делать что требуется. Например, изменять настройки пользовательского сеанса, либо какие-то каталоги/файлы ему подкидывать.
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883206
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoviewА можно создать службу, которая у каждого пользователя будет своя?ты читал выше ответы?
Это сервис ОСИ. А не юзверя.
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883215
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
понял
просто приложение же у каждого пользователя свое, даже если одновременно несколько пользователей работают

мне нужно подписаться на установку сертификата в личное хранилище пользователя
и отправить сертификат на сервер
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883219
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoviewмне нужно подписаться на установку сертификата в личное хранилище пользователя
и отправить сертификат на сервер
служба может слушать специальные уведомления от файловой системы или реестра . Когда такое уведомление приходит, служба подготавливает необходимый пакет данных и отправляет их на сервер.
...
Рейтинг: 0 / 0
В чем разница между службами и приложениями?
    #39883224
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonИ уж совсем геморрой - если рассчитывать не на конкретный линух, а на два-три разных, ибо
делаются они по принципу "лишь бы не как у соседа".

Я даже не знаю кому это нужно. Ну сделали там 1 сборку под самый попсовый Linux.
Например тот EC2 который имет дешевые цены от Amazon. А если кто хочет экзотики - то
за отдельные деньги.

Никому-же не приходит в голову велосипедить код под Windows и MacOS одновременно в этом
сегменте софто-строения.
...
Рейтинг: 0 / 0
25 сообщений из 77, страница 1 из 4
Форумы / C++ [игнор отключен] [закрыт для гостей] / В чем разница между службами и приложениями?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]