Link to home
Start Free TrialLog in
Avatar of bosshognz
bosshognzFlag for New Zealand

asked on

Deploying Printers via GPO in 2008 R2 - How do I improve it's performance?

Hi,

We've got some 60 users spread across 3 RDS Servers all using Server 2008 R2.  All users stick to their own RDS Server, only changing if there is an issue preventing them from connecting to it, and they use one of the others.  All users see all of the print queues.

We set up all of the print queues in Print Management and then deployed them from there to a GPO using the 'per user' setting, but have noticed that there is quite a performance hit from how the printers were set up in our old 2003 server, where we had all printers set up as local printers.  Performance hit as in - when they first log in it takes a while to populate all 25 print queues (yes 25 for 60 users - we have managed to cut this down from 40-50-odd in the old 2003 enviro!), and also if they do a resource intensive job, such as running a report that populates an Excel spreadsheet with data from our SQL Server - the report takes about 30secs to run.  About 30 secs to 2 mins after the report has been finished - or they have logged onto the server they printers appear again.... gradually.  Physical printing wise - there are no issues.  Often if a user's default printer doesn't appear within a given timeframe, it will select the first printer on the list..... to the annoyance of the user!

So, how can I improve the speed at which printers populate?  In terms of what processing is done, is the a difference between deploying by computer and deploying by user?  From my reading I understand that when you update printer preferences it will by default auto update - by user it will do this for each user - does it do the same per computer?  Or does it just do it once per computer?  Is there anywhere else that we can gain performance in the GPO?

Please note - I'm not looking for 'stab in the dark' answers - I'm after informed, experienced advice in this field.  We seem to be pioneers with this in our own circle of IT providers - but I can't believe that there isn't more experienced knowledge out there that we can tap!
Avatar of Lester_Clayton
Lester_Clayton

There has always been printing performance issues with RDS or ICA solutions, and you're not alone.  Currently we deploy printers per user, because it suits us to do so.  In my environment however, it's the FIRST login which is slow - subsequent logons are not

We use GPO's too, but we rely on the "Printers" policy in the Client Side Extensions, rather than making Print Management create GPO's for us.  Individual printers can still be filtered out per user or per group.  

User generated image
Use "Run in logged-on user's security context (user policy option)" to ensure it propagates to the user's profile, and this is where you set Item-level targetting for per user or per group.

User generated image
If you're using print management, then it is probably creating one policy per printer - this does not help you at all - increased policies means slower login performance.

Another thing to note - printers which are deployed at a user level are stored in the user's profile, which is why I use the action "Update" rather than "Create".  With Update, if the printer is there, it doesn't recreate it

And lastly - do you use roaming profiles for these users?  If they're getting a new profile each time they are logging on, the only way you will be able to improve the speed is to install the printers on the servers.

Try with a group of users, deploying the printers via a new single policy which contains all the printers, plus all the targetting you desire - and see if this improves performance.

I do remember supporting an office where they had 34 personnel and 37 printers.
Avatar of bosshognz

ASKER

Hi Lester - thanks for replying!
Print Management - reason I chose this is because it seems to be the best/easiest way to deploy printers - according to MS..... I mean you set up the printers in Print Management - you create a GPO on AD and then you add the printers to the GPO by right clicking on them - it seems so simple that anything else seems to be a legacy way of doing it.

The 'Per Computer' 'Per User' settings are in the Printer Deployment window when you deploy from Print Management - but basically it just picks what side of the GPO it uses - User or Computer Config.

We have 2 Print GPOs - for the different groups of users that never use each other's printers - not doing 1 GPO per Printer.

Roaming profiles - yes we use these as we want the user experience across the 3 RDS servers to be the same - IE: no matter what server they log into they see the same.  For other reasons we have also set the local profiles to delete when the user logs out.  

I have added one printer to a new GPO on using the 'Per Computer' setting to see what performance gains (if any) we can get from it.

To be honest - we'd love to have 1 print queue per printer - there are only 12 printers in the organisation - but each printer has to have 2-3 queues.  No way around it.  We did cut it down from 4-6 queues per printer - so we are making some way into it!
ASKER CERTIFIED SOLUTION
Avatar of Lester_Clayton
Lester_Clayton

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
For the user's sake - and our sanity.  It is a long story and completely off topic - short story is that all print jobs are charged to clients and they don't like making mistakes by printing double or single sided by mistake.  As I said - completely off topic - and is not able to be changed.

I don't want to go back to local printer creation on each of the RDS servers - I used to spend DAYS on these when fixing issues across all the queues on all the printers.  The idea was to eleviate IT Support work and  human error by consolidating all printers to the one place and publish out via GPO.  I would like to see success coming from what using what looks like MS Best Practice way of doing things - I know thats not always possible.

Can anyone tell me about per user vs per computer - is there a performance gain using one over the other?  Whats the difference between the two on an RDS enviro?  I haven't found any documentation on them as yet.
We've split out the printer GPO into  further - meaning people have less print queues to load on log in.  There is a slight noticeable difference.  

And we're also revisiting the local profile deletion on the servers.  This will of course improve performance no end.

Thanks for the help :)