Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Аналог Job'ов  [new]
Initio
Member

Откуда:
Сообщений: 23
Доброго времени суток, господа и, быть может, дамы.
Появилась необходимость перенести джобы в "нечто другое". С удовольствием выслушаю мнение более опытных форумчан по поводу того, куда именно можно перенести эти самые джобы. В голову кроме как bat-файлов в Task Scheduler ничего не приходит. Может кто имел подобный опыт?
19 фев 14, 15:29    [15590854]     Ответить | Цитировать Сообщить модератору
 Re: Аналог Job'ов  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2423
Initio,

Самописная служба.
19 фев 14, 15:31    [15590874]     Ответить | Цитировать Сообщить модератору
 Re: Аналог Job'ов  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Зачем?
19 фев 14, 16:15    [15591274]     Ответить | Цитировать Сообщить модератору
 Re: Аналог Job'ов  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
Initio
Доброго времени суток, господа и, быть может, дамы.
Появилась необходимость перенести джобы в "нечто другое". С удовольствием выслушаю мнение более опытных форумчан по поводу того, куда именно можно перенести эти самые джобы. В голову кроме как bat-файлов в Task Scheduler ничего не приходит. Может кто имел подобный опыт?


Service Broker
19 фев 14, 16:26    [15591354]     Ответить | Цитировать Сообщить модератору
 Re: Аналог Job'ов  [new]
it17
Member

Откуда:
Сообщений: 108
Гавриленко Сергей Алексеевич,

Многопоточность, хотя бы
19 фев 14, 16:41    [15591493]     Ответить | Цитировать Сообщить модератору
 Re: Аналог Job'ов  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
it17
Гавриленко Сергей Алексеевич,

Многопоточность, хотя бы
Шта?
19 фев 14, 17:06    [15591730]     Ответить | Цитировать Сообщить модератору
 Re: Аналог Job'ов  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 32173
it17
Гавриленко Сергей Алексеевич,

Многопоточность, хотя бы
В смысле, джобы не обеспечивают многопоточность? Или что вы имели в виду?
19 фев 14, 17:15    [15591841]     Ответить | Цитировать Сообщить модератору
 Re: Аналог Job'ов  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 4539
Гавриленко Сергей Алексеевич
Зачем?

Присоединяюсь к вопросу.
Только одно напрашивается на ум - использование Experss версий SQL Server.
19 фев 14, 17:19    [15591878]     Ответить | Цитировать Сообщить модератору
 Re: Аналог Job'ов  [new]
it17
Member

Откуда:
Сообщений: 108
Гавриленко Сергей Алексеевич,

Обеспечивают? Просветите, без стеба.

Есть задача, ей не совсем место на SQL сервере, но так уж повелось.
На SQL серваке висит CLR-сборка.
Повешен JOB, который вызывает метод из CLR, например пингует статус платежа у провайдера по TCP/IP
Ответ провайдера может занимать от 1 до 30 сек.
Получается, что в течение 30 сек, будет обрабатываться статус только 1-го платежа.

Я разработчик, по словам админов, JOB не может быть многопоточным.
Цель - запустить проверку статусов 10 платежей одновременно.
Как разработчик вижу решение только в написании отдельного сервиса.
19 фев 14, 17:31    [15592005]     Ответить | Цитировать Сообщить модератору
 Re: Аналог Job'ов  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 32173
it17
Цель - запустить проверку статусов 10 платежей одновременно.
Как разработчик вижу решение только в написании отдельного сервиса.
Вместо написания своего сервися можно использовать существующий - создавать и запускать из джоба 10 новых джобов без расписания с опцией "удалить после выполнения".
19 фев 14, 17:34    [15592040]     Ответить | Цитировать Сообщить модератору
 Re: Аналог Job'ов  [new]
it17
Member

Откуда:
Сообщений: 108
alexeyvg,
Спасибо.
При таких исходных данных:
Время запуска - 1 раз в секунду
Таймаут ответа - 30 сек (условно ответ получаем на 29-30 секунде)
Основной JOB порождает 10 дочерних

Получается, что за 30 сек до ответа на запрос первого джоба на сервере будет уже 290 потоков выполнения (это в худшем случае)?
То есть нельзя сделать ограничение: выполнять только 10 потоков одновременно?
19 фев 14, 17:57    [15592271]     Ответить | Цитировать Сообщить модератору
 Re: Аналог Job'ов  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
it17
alexeyvg,
Спасибо.
При таких исходных данных:
Время запуска - 1 раз в секунду
Таймаут ответа - 30 сек (условно ответ получаем на 29-30 секунде)
Основной JOB порождает 10 дочерних

Получается, что за 30 сек до ответа на запрос первого джоба на сервере будет уже 290 потоков выполнения (это в худшем случае)?
То есть нельзя сделать ограничение: выполнять только 10 потоков одновременно?
Делаем очередь, делаем нужное кол-во воркеров (джобов) - 10, к примеру - натравливаем их на очередь. Хотя это для SB, скорее, задача.
19 фев 14, 18:07    [15592363]     Ответить | Цитировать Сообщить модератору
 Re: Аналог Job'ов  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 32173
it17
alexeyvg,
Спасибо.
При таких исходных данных:
Время запуска - 1 раз в секунду
Таймаут ответа - 30 сек (условно ответ получаем на 29-30 секунде)
Основной JOB порождает 10 дочерних

Получается, что за 30 сек до ответа на запрос первого джоба на сервере будет уже 290 потоков выполнения (это в худшем случае)?
То есть нельзя сделать ограничение: выполнять только 10 потоков одновременно?
Ну, определитесь, что нужно - раз в секунду запускать 10 проверок и держать 290 потоков, или ограничивать количество.

В огрничении ничего сложного нет, вы же можете при запуске основного джоба определить, какие из ранее запущенных ещё выполняются.


Гавриленко Сергей Алексеевич
Делаем очередь, делаем нужное кол-во воркеров (джобов) - 10, к примеру - натравливаем их на очередь. Хотя это для SB, скорее, задача.
А можно и с очередями или с SB

В общем, вариантов много.
19 фев 14, 18:57    [15592773]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить