Encerra o serviço do Windows com base na carga

2

Eu queria saber se existem soluções livres / de código aberto que iniciem e interrompam um serviço do Windows com base na carga? Eu tenho alguns serviços de assinantes pubsub que fazem trabalho de fundo que não é crítico. Idealmente, eu gostaria de poder automatizar as coisas para que esses serviços pudessem começar se a memória / cpu / disk i / o estivesse abaixo de um determinado limite e parasse de forma adequada se esse limite fosse atingido. Você conhece alguma solução? obrigado JP

    
por JP. 07.06.2010 / 01:15

3 respostas

1

Existe um software incorporado ao Windows que faz isso chamado Gerenciador de Recursos de Sistema do Windows ( WSRM) fará o que você quer, isto é, serviços de prioridades baseados em recursos.

Obviamente, não opensource, mas vem com o sistema operacional.

    
por 15.07.2010 / 08:48
0

Não conheço uma ferramenta externa, mas você pode monitorar contadores de desempenho relevantes dentro de seu serviço e não trabalhar (dormir por algum período) se os contadores de desempenho que você considera relevantes excederem os limites. Isso não seria o mesmo que interromper o serviço (ele ainda estaria residente na memória), mas deve atingir o objetivo desejado.

Um benefício dessa abordagem é que você não precisa se preocupar com a configuração e configuração de uma ferramenta externa ou o monitoramento de que a ferramenta externa ainda está funcionando.

    
por 07.06.2010 / 01:20
0

Você pode configurar um alerta que pode ser executado em um limite fixo (digamos, CPU > = 75)  Para configurar um alerta no windows aqui é um link link

Você pode configurar um alerta para a condição CPU Usage > = 75% e como a linha de comando que você pode usar

      net stop svcName 

Isso interrompe o serviço chamado svcName.

Você pode ter outro alerta definido para o uso da CPU oposto < 70% e como linha de comando você poderia usar

      net start svcName 

quando você cai abaixo dos limites.

Mantive uma margem de 5% entre ativado e desativado, embora você possa criar um arquivo em lote para atrasar a inicialização e a interrupção do serviço com muita frequência.

Espero que isso ajude

    
por 08.06.2010 / 01:37