How to make the work environment use more processor power?

Hi I have a rather unusual problem, because I think that in my case the runtime does not use enough processor power. The scenario is as follows:

  • I send a lot of messages in the queue. I am using the EnqueueItem method from the WorkflowRuntime class.
  • I create a new workflow instance using the CreateWorkflow method of the WorkflowRuntime class.
  • I wait until the new workflow is transferred to the first state. Under normal conditions, it takes tens of seconds (the workflow is complex). When at the same time messages are sent in a queue (as described in clause 1), it takes 1 minute or more.

I observe a low level of CPU usage (8 cores), not more than 15%. I can add that I have a separate process that is responsible for the logic of the workflow, and I communicate with it with WCF.

+3
source share
3 answers

You have a magazine that you think is not a problem, but you do not know. There are many database operations. They need to block I / O. Having more cores will only help if different threads can run smoothly.

, , , , . , . , .

, , , , . ( , .) , , . - , , , . , . , . , .

. , , . , , , . .

+2

?

- ( ..), , , .

, - , , , . , , .

, , , ...

: ...

1) OK
2) 2000 , - . 20-25 8- , , , , ( ) . , .
3) ? , , , ? , , , , ? , , ? , .
4) , , , . , , , , .

, , , . -...

0

WF3 . .NET 4, , WF4. , WF4 - .

WF3. , , . , , DefaultWorkflowSchedulerService, ManualWorkflowSchedulerService , .

0

Source: https://habr.com/ru/post/1766922/


All Articles