I can confirm there was a period of about six months or a year where the execution limit was an absolutely luxurious 30 minutes for edu. As the documentation states, they can change it at any time without warning. I imagine there were some engineers who pointed out all the electricity these long running scripts were using and got it pulled back to the original 6 minutes.
As for options other than those given, I have several mission critical scripts that do operations that take significant processing time. I’m not really able to offload it to background tasks on another service, so these are the strategies I use. I tend to use these strategies even when I’m not concerned with going under the quota:
UrlfetchApl has a method fetchall that can be used to call multiple endpoints at the same time. The responses that come back are in same order as they were built. I have found significant speed up of a function, for example, that reads in all the group members of 20 different groups. Doing it one by one with admin directory service would take about 10 seconds, but by interacting with the api directly with the UrlfetchApp, it takes about a second.
(Note to self, I really need to release performance stats to back these claims up.)
The other strategy is that I use advanced services as it has more flexibility and more can be accomplished faster. The spreadsheet service has a batch update endpoint which seems to be the most efficient way to send spreadsheet writes.
Both those methods require more typing, but I’ve written libraries (“Endpoints”) that reduce this overhead.
Regards,
Adam
--