def METHOD_NAME(app):
	"""
	Select server with least cpu consumption
	"""
	domain = get_saas_domain(app)
	proxy_servers = frappe.get_all(
		"Proxy Server",
		[
			["status", "=", "Active"],
			["Proxy Server Domain", "domain", "=", domain],
		],
		pluck="name",
	)
	release_group = get_saas_group(app)
	bench_servers = frappe.db.sql(
		"""
		SELECT
			bench.name, bench.server
		FROM
			tabBench bench
		LEFT JOIN
			tabServer server
		ON
			bench.server = server.name
		WHERE
			server.proxy_server in %s AND bench.status = "Active" AND bench.group = %s
		ORDER BY
			server.use_for_new_sites DESC, bench.creation DESC
	""",
		[proxy_servers, release_group],
		as_dict=True,
	)
	signup_servers = tuple([bs["server"] for bs in bench_servers])
	signup_server_sub_str = (
		tuple(signup_servers) if len(signup_servers) > 1 else f"('{signup_servers[0]}')"
	)
	lowest_cpu_server = frappe.db.sql(
		f"""
		SELECT
			site.server,
		SUM(
			CASE WHEN (site.status != "Archived" and site.status != "Suspended") or NOT NULL
			THEN plan.cpu_time_per_day ELSE 0 END
		) as cpu_time_per_month
		FROM
			tabSite site
		LEFT JOIN
			tabPlan plan
		ON
			site.plan = plan.name
		WHERE
			site.server in {signup_server_sub_str}
		GROUP by
			site.server
		ORDER by
			cpu_time_per_month
		LIMIT 1""",
		as_dict=True,
	)
	lowest_cpu_server = (
		lowest_cpu_server[0].server if lowest_cpu_server else signup_servers[0]
	)
	for bs in bench_servers:
		if bs["server"] == lowest_cpu_server:
			return bs["name"]