Acredito que isso possa vir a se tornar 1 problema sim… Como ficaria por exemplo o tratamento no caso das mensagens não serem entregues ou como ficaria caso o horario e a periodicidade venha a ser mudada?
Para job scheduler ou eu usaria o agendamento nativo do sistema ( at ou cron) ou uma API ou framework para isso como Quartz.
Não sei ao certo a implicação de desempenho que isso virá a ter nem como o Quatz funciona internamente ( também nunca me ocorreu procurar )… Posso dizer que já usei para multiplas tarefas e não tive problemas com consumo de recursos…