Script to change Address Book Service throttling on Exchange 2010


If you are deploying BlackBerry in Exchange 2010 environment, one of the requirements is to change throttling limits on Address Book Service from default 50 to 100,000. While I reserve my judgment to what number is right, you will have to change it to some number above 50 for sure.

If you have many CAS servers where you have to change this, it quickly becomes painful because you have to change config file and restart services.

Well, sweat no more if you are in this situation. Use my script instead.

You can download the script here: Set-ThrottlingLimit.ps1

I will avoid posting entire code here but below are some examples of how you can run it:

The following example will query specified server for current value of MaxSessionsPerUser:

 

Set-ThrottlingLimit -Server Server1

 

The following example will set MaxSessionsPerUser to 5000 and restart services MSEXchangeRPC and MSExchangeAB without confirmation:

 

Set-ThrottlingLimit -Server Server1 -MaxSessionsPerUser "5000" -force $true

 

The following example will set MaxSessionsPerUser to 5000 and restart services MSEXchangeRPC and MSExchangeAB after confirmation from user:

 

Set-ThrottlingLimit -Server Server1 -MaxSessionsPerUser "5000"

 

Questions and Comments are always welcome.

Comments (4)

  1. No, this does not apply to SP1. I will be updating the script to account for changes in SP1.

  2. As with any other PowerShell script, when you download the script from internet, assuming you trust the script, you should unblock the script by going to file properties dialog box in Windows Explorer. Even with Execution Policy set to RemoteSigned, you shouldn't need the scripts signed if you have unblocked them.

  3. Jerry Young says:

    Good script.  Timely, too, as I just finished configuring the BES Service Account on Exchange 2010.

    What would have been helpful to include, however, is:

    Sign the script (default ExecutionPolicy is RemoteSigned)

    or

    Instructions on how to run unsigned

    Elevated PowerShell Instance

     Set-ExecutionPolicy Unrestricted

     Run script (.Set-ThrottlingLimit.ps1 <arguments>)

     Set-ExecutionPolicy RemoteSigned

    Instructions on how to add the script permanently so when you open EMS, it loads automatically.

  4. raghu says:

    Does this apply for E14 Service Pack 1 as well?

Skip to main content