Tuesday, November 09, 2010

Dispatcher Tips

It’s one thing to build a system in a sandbox or lab environment and a completely different thing to run that system in a production environment. There are a number of things that system designers and architects need to consider. Some of these considerations are fairly obvious, such as RAM, processor, network configuration, whether or not to virtualize, etc.

However one of the things that sometimes gets forgotten in a NetWeaver Identity Management solution is the use and configuration of dispatchers. These seemingly small pieces of the configuration are responsible for a great deal of the operation of NW IDM, as they actually process and execute the provisioning jobs in the workflow.
There are a couple of basic rules of thumb that should be considered when planning for deploying dispatchers in a productive environment.
  • There should only be one dispatcher per host. If anyone has any data on this, I’d love to see it. In an ideal world, it would be one dispatcher per physical host. I have not done any testing in virtualized environments, but I don’t see that as being a huge issue.
  • Plan on one dispatcher per about every 25,000 users.
  • If you have specific types of tasks and workflows that require special access, create a specialized dispatcher that supports them. Specific examples would include password management and deprovisioning.
It’s also important to consider that there are several options for tuning the dispatchers, which we will discuss in a future post.

2 comments:

Mahesh said...

what's the disadvantage of having two or more dispatchers per host?

I have configured 2 dispatchers in my physical host and its running fine.

Regards,
Mahesh

Matt Pollicove said...

Mahesh,

Great question. There's are two main reasons that I am aware of:

1. It can cause nasty spikes in CPU and Network traffic.

2. Increased chance of "deadlocks"

I'm sure there's more, but basically it comes down to those. It should be ok for development/test work.

Possibly the only way I'd see doing two dispatchers on the same host would be if one was for password provisioning and one was for user provisioning, but even this is not a great idea.

Thanks for asking!
Matt