Use the license assignment feature to precisely manage the availability of Agent licenses per System Profile and/or Agent Group.
Similar question as I had some time ago:
I saw that the License Reservation REST API is now available:
So you can move licenses in a scripted way.
Note that moving licenses won't impact the agent being installed and running in the application. If you truly want to see the impact with and without the agents you would need to remove them from the application and have them not injected at all. If they are mapped to a profile the agents will still be collecting and sending back the data and it is only on the server side that the data will be discarded if it is not licensed.
To remove the code level instrumentation of the application you could either unplace all of the sensors or change the mappings so that they don't match any agent group and thus don't have any sensor configurations.
I've seen this approach mentioned a couple of times. I think I understand that the agent will not be allowed to consume a license, but does the agent still continually talk to the collector?
According to kevin K above it does.
So, who is the gate keeper here? The agent, the collector or the DT server? If it's the collector or the DT server then I suspect agent traffic overhead will not be eliminated and will continue to impact server performance. The only way to stop the traffic is to remove the agent instrumentation from the source server and restart the app.