[discuss] long running actions

2018-05-31 Thread Michael Marth
Hi all, taking this discussion from Slack to here: What would be the best way to support long running actions, especially actions for which the duration is unknown when the action is started. An example is e.g. a blackbox container that transcodes a video. The main issue is that OW limits the a

Re: [discuss] long running actions

2018-05-31 Thread Chetan Mehrotra
Just a quick thought ... May be do it like its done in Travis 1. Each action gets an upper limit say 1 hr (its 50 min in Travis) 2. If there is no progress logging done for say 10 mins then task gets killed. Here callbacks or long polling would be better 3. An action can still have multiple sub

Supporting user-configurable warm action containers?

2018-05-31 Thread James Thomas
One of most frequent complaints[1][2][3] I hear from developers using serverless platforms is coping with cold-start latency when dealing with sudden bursts of traffic. Developers often ask for a feature where they can set the number of warm containers kept in the cache for a function. This would

Re: Supporting user-configurable warm action containers?

2018-05-31 Thread Nick Mitchell
for nodejs at least: the cost of a few requires of common packages can easily get you up to the 150-200ms range (e.g. request is a big hitter; and this is all on top of the cost of starting a container!). perhaps, for nodejs at least, there are only a few options, ultimately: user pays more for idl

Re: Supporting user-configurable warm action containers?

2018-05-31 Thread James Thomas
Speaking to external developers about this, people seem happy to pay for this feature. On 31 May 2018 at 12:34, Nick Mitchell wrote: > for nodejs at least: the cost of a few requires of common packages can > easily get you up to the 150-200ms range (e.g. request is a big hitter; and > this is al

Re: Supporting user-configurable warm action containers?

2018-05-31 Thread Michele Sciabarra
Well, Go actions can be precompiled using the same docker image used for execution, so if you can use Go for implementing your action, you have the "prewarming" feature out of the box. Also since Go programs can embed statics, you do not have to import anything, it is all in memory. I am tr

Re: Supporting user-configurable warm action containers?

2018-05-31 Thread Michele Sciabarra
The recent work introduced also support to use docker image as a compiler (and it is what I normally do). I "compile" the binary offliine and I send it as a single binary, that is started at init time. However while for Go and Swift it is "easy", I do not see how we can "precompile" a nodejs a

Re: Supporting user-configurable warm action containers?

2018-05-31 Thread Dascalita Dragos
Acknowledging that dev cycles, performance tests, or other spiky traffic may not be initially captured, I would put my $$$ on teaching OW how to learn the traffic pattern and let it pre-warm based on that. There are existing algorithms that could be used for prediction, if we just have the features