FIM Webservices Performance
I'm using FIMautomation commandlets to export person certian objects based on a filter towards a CSV file. These FIM queries via Webservices seem however to be very slow/timeconsuming. How can I improve the performance of the FIM Webservice so that commandlets give their answers in a timely fashion. Example script used: set-variable -name URI -value "Http://servername:5725/ResourceManagementService' " -option constant set-variable -name CSV -value "OUtfile.csv" clear If(@(Get-PSSnapin | Where-Object {$_.Name -eq "FIMAutomation"} ).count -eq 0) {Add-PSSnapin FIMAutomation} function PsExportObject() { process { $importObject = $_ $psObject = New-Object PSObject foreach ($attribute in $importObject.ResourceManagementObject.ResourceManagementAttributes) { $name=$attribute.AttributeName if ($attribute.IsMultiValue) { $value=$attribute.Values } else { $value=$attribute.Value } Add-Member -InputObject $psObject -MemberType NoteProperty -Name $name -Value $value } $psObject } } $Filter = "/Person[FILTER]" $curObject = export-fimconfig -uri $URI –onlyBaseResources -customconfig ($Filter) -ErrorVariable Err -ErrorAction SilentlyContinue | PSExportObject $curObject | export-csv -path $CSV Kind Regards, Frank van Rijt
April 21st, 2011 8:48am

What build are you on? Step 1 is to make sure that you are running the most recent bits. Cheers, Markus Markus Vilcinskas, Knowledge Engineer, Microsoft Corporation
Free Windows Admin Tool Kit Click here and download it now
April 21st, 2011 11:20am

Hello Markus, We are not running on the latest build, we are on build 3561. Is there much performance to gain moving to the latest build on the webservice calls? Our infrastructure should be big enough to deal with this kind of exports. (2 physical fim portal/fim webservice servers (loadbalanced via an NLB), FIM service DB on a dedicated SQL cluster, database stored on a HBA attached SAN). Would bring build 3576 also performance gains on the webservices itself or only for the FIMMA using Asynchronous Mode? Cheers, Frank Kind Regards, Frank van Rijt
April 22nd, 2011 7:21am

How many objects are matching that filter? How long is it taking? I could run a similar export here and tell you the results...http://setspn.blogspot.com
Free Windows Admin Tool Kit Click here and download it now
April 22nd, 2011 10:57am

Hi Frank, The Export-FIMConfig cmdlet first queries the FIM Service for objects that match your filter. Based on those results, the cmdlet will pull each object back individually. If your filter matches a large number of objects, the Export cmdlet will be slow. Here's a different suggestion to make things go faster: the FIM Service supports multiple requestors. You could parallelize the Export cmdlet by changing your filter and partitioning the objects you pull back. For example, I could spawn off 26 threads to get back all users with each thread taking a letter of the alphabet. Billy
April 26th, 2011 3:00pm

Hello Billy, Thanks for the work-around by spawning requests, this reduced my runtime significantly, although I would like to see the FIM service respond faster on requests. Frank.Kind Regards, Frank van Rijt
Free Windows Admin Tool Kit Click here and download it now
June 28th, 2011 11:53am

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics