Best Practices for forever running workers

Hi Team, we self host Temporal and our customers have a use case where they want to run a specific command on multiple hosts where they use unique task queue names and launch workflow and worker with those unique task queue names. Customers have workers at very high scale(500-2000 workers) and those workers continously run even after workflows are completed. Because of high number of workers, Poll calls are high which is increasing our DB CPU Utilization, what is best practice for this scale? Is there anything that needs to configured at server side or at worker side?