Cron periodicamente chamando um script de shell para garantir que um serviço está sendo executado é realmente um método de nível de entrada decente para o monitoramento de serviços em redes simples. Cron pode verificar uma vez por minuto, de modo que pode ser bom o suficiente para as demandas de seu ambiente, se os tempos de inatividade de < 60 segundos é aceitável. É fácil de configurar e usar.
O supervisor, por outro lado, pode manipular os sinais em tempo real do kernel referentes ao processo de serviço. Esta é uma resposta MUITO mais curta do que simples scripts cron. Usar o Cron para monitorar seu serviço de supervisão também não é terrivelmente difícil e fornecerá uma boa segunda linha de defesa.
Se você precisar garantir que o serviço esteja funcionando e respondendo em incrementos muito curtos sem que QUALQUER serviço seja interrompido devido a pontos únicos de falha, provavelmente seria melhor ter a detecção de failover de serviço de vários servidores e soluções de monitoramento mais robustas. Tudo isso exigirá um arranjo de rede mais complexo com mais investimentos em planejamento e manutenção.