I just wanted to configure "Resource Governor" on one of my production database server, where we have implemented AlwaysOn.

Many applications like SSRS, web App and SSIS connect to the database server.

I'm able to get application name for SSRS, web App and SSIS using APP_NAME() function, but not able to get application name for AlwaysOn processes.

Is there any way we can identify it, so that we can monitor/restrict how much resources being/will be used by AlwaysOn through resource governor.

  • Did you checked the "Dashboard" feasibility of SSMS tools. Which Microsoft has provided along with SSMS tools for monitoring the AlwaysON Availability group resources. – Md Haidar Ali Khan Oct 11 at 8:42
  • Why would you want to restrict the AlwaysOn processes? Wouldn't you risk secondaries being unavailable for failover? – George.Palacios Oct 11 at 8:44
  • @MdHaidarAliKhan Yes I went through that feature, It's good to monitor REDO WAIT, COMMIT, LATENCY etc. but it doesn't share information about resource consumption by AlwaysOn. – Rajesh Ranjan Oct 11 at 8:45
  • @George.Palacios That's possible scenario, but before restricting I'm planning to configure without any restriction for all types of connections. Once I get statistics, I'll set restriction. – Rajesh Ranjan Oct 11 at 8:48

Is there any way we can identify it, so that we can monitor/restrict how much resources being/will be used by AlwaysOn through resource governor.

I would absolutely not advise trying to do something like this. The point of Always On (I'm assuming you mean availability groups, here) is generally for high availability, disaster recovery, or multiple copies for read heavy workloads without using Replication.

Always On is accomplished through system processes on hidden schedulers (depending on version of SQL Server) and there wouldn't be a straight-forward way to do this with resource governor.

I'm able to get application name for SSRS, web App and SSIS using APP_NAME() function, but not able to get application name for AlwaysOn processes.

Always On Availability Groups aren't an application but parts of the system. They use all of the normal built in mechanisms to SQL Server with only a few specifically built for it.

For example, part of the process is to write log information to disk. This is no different than writing any other log to disk, when you look at it from the outside. If you were to govern the amount of IOPs that could be done to a database then it would affect the entire database, not just the Availability Group process.

  • Microsoft does show you how to query the processes related to always on but I agree this should be left alone. – clifton_h Oct 12 at 12:56

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.