Como executo o Postgres em “nice”?

2

Eu geralmente inicio o Postgres com pg_ctl -D /db start

Como posso começar com "nice", por isso é executado com prioridade mais baixa?

    
por mike 07.08.2010 / 00:32

3 respostas

1

nice pg_ctl -D /db start

Use nice command to run a program with modified scheduling priority / nicenesses. Nicenesses range at least from -20 (resulting in the most favorable scheduling) through 19 (the least favorable). The default behavior is to increase the niceness by 10.

A niceness should not be confused with a scheduling priority, which lets applications determine the order in which threads are scheduled to run. Unlike a priority, a niceness is merely advice to the scheduler, which the scheduler is free to ignore.

    
por 07.08.2010 / 00:55
1

Você tem que "agradar" todos os processos de backend, não apenas o postmaster: link

    
por 09.08.2010 / 13:22
0

Em systemd você pode precisar de algo mais parecido com isto - note que aqui (Debian / Ubuntu) a versão do mecanismo e o nome do cluster podem ser usados para controlar um serviço específico, mas isso pode não ser o caso da sua distribuição:

# systemctl edit postgresql@10-main

[Service]
Nice=15
IOSchedulingClass=2
IOSchedulingPriority=7

# service postgresql@10-main restart

Eu incluí o agendamento de I / O, como você também pode querer controlar isso, mas é claro que você pode deixar isso de lado. Pode ser definido automaticamente, dependendo do nível bom, se você não configurá-lo explicitamente. Lower é uma prioridade mais alta, 0-7 dentro da classe 2 (melhor esforço). A classe 3 está inativa. A classe 1 é em tempo real, você provavelmente não quer isso.

    
por 08.10.2018 / 05:01