How does the automation for SLA will breach in 30/60 minutes work?


we have a requirement to send escalation mails to some users when 80% of the SLA time has already passed.
The JSD built-in automation functionality provides an option to trigger a rule when the SLA time is going to be breached in 30 or 60 minutes.
Because we have multiple SLA goal times and therefore the 80% are not covered with the 30/60min option and because we need more customization options for the mail this is not an option for us. Thus, we are thinking about using multiple Script Runners Escalation Services that is running frequently (every minute) to check if the 80% are reached.
My question now is how does the native JSD-Feature handle this? Is it also a Service that runs every minute or does it fire an event? If so, how does it know when to fire the event?
So basically my concern is if the method with the escalation services is a lot worse regarding the performance or if it is the same functionality.

I am thankful for every input!

Best Regards
Robert Pejic