Вопрос о производительности рабочего процесса Dynamics CRM 4.0 - PullRequest
1 голос
/ 18 февраля 2010

Я разработал рабочий процесс для автоматического закрытия встреч, которые происходят через 28 дней после даты начала. Для этого я создал рабочий процесс на уровне организации с использованием операции тайм-аута рабочего процесса, чтобы подождать до 28 дней после даты начала до закрытия.

Я обеспокоен тем, что это может создать все большую нагрузку на реализацию CRM по мере увеличения числа встреч (тысячи могут быть открыты с подключенными ожидающими рабочими процессами).

Как я могу это проверить? кто-нибудь знает, как часто асинхронная служба будет опрашивать, чтобы проверить, истекло ли время ожидания, и имеет ли это большое значение для количества открытых операций?

Ответы [ 2 ]

4 голосов
/ 24 февраля 2010

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

  1. Убедитесь, что вы регулярно планируете следующая работа, чтобы очистить любой обработанные записи и перестроить индексы / статистика по мере необходимости. KB968520
  2. Включите следующий раздел реестра, который автоматически удалит все обработанные записи. KB974896

Кроме того, вы должны быть в хорошей форме.

2 голосов
/ 15 марта 2010

Техника использования задания в KB968520 в порядке, но лучше создавать «самоконтролируемые» рабочие процессы, которые истекают в соответствующее время (независимо от того, что подходит для вашей базы данных), если действия, к которым они приводят, не выполняются. не принято При этом используется метод, известный как «условие параллельного ожидания», который обсуждается здесь .

Параллельное ожидание заставит рабочие процессы «очищаться», даже когда записи, на которые они влияют (или на которые они влияют), были удалены из базы данных.

...