Hi Mandeep -
I think that “long running” is relative in context of OpenWhisk, meaning a 
container will remain running (or paused, but NOT removed) if there is at least 
1 activation routed to it within a 10 minute timeout.  This is different than a 
web server, for example, where the container would typically remain running 
continually regardless of whether there are requests.

This does NOT mean that it will not be removed ever (if it becomes idle, no 
activations being processed), or that it will be started without having 
activations present (e.g. the first activation will incur the latency required 
for initing the container).

There also is a separate notion of “prewarm" containers, where the container is 
started, but NOT initialized with a specific action - this is currently done 
for "node:js” action kind containers only, but could be made configurable 
without much work. Containers will still incur initialization cost (installing 
code for the specific action) on first use, but the container will already be 
in a started state.




On Sep 5, 2017, at 11:31 PM, mandeep gandhi 
<[email protected]<mailto:[email protected]>> wrote:

that should still be possible without needing excessive container
recreates.

Did you mean to use warm container support or to envision these containers
as long running processes?

On Wed, Sep 6, 2017 at 11:50 AM, Markus Thömmes 
<[email protected]<mailto:[email protected]>>
wrote:

Hi,

that should still be possible without needing excessive container
recreates. Do you see anything blocking your use-case?

Am 06. September 2017 um 08:17 schrieb mandeep gandhi <
[email protected]<mailto:[email protected]>>:

Hi Markus,

Actually, I am trying to orchestrate a workflow via open-whisk which would
involve a request payload passing through a sequence of actions. So I have
a mixed bag of heterogeneous micro services I want to mimic as actions.

I had already gone through your blog earlier.



On Wed, Sep 6, 2017 at 11:27 AM, Markus Thömmes 
<[email protected]<mailto:[email protected]>>
wrote:

Hi Mandeep,


OpenWhisk relies on container reuse (i.e. using warm containers) heavily

to reach its performance goals. Currently, containers are kept around for a

maximum of 10 minutes if they are not replaced by the need of some other

container.


You can refer to this article written by me (shameless self-advertisement)

to get some insights into how our container caching works:

https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmedium.com%2Fopenwhisk%2Fsqueezing-the-milliseconds-how-to-make-&data=02%7C01%7C%7Ce89789d7d45b4339333108d4f4f0f921%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636402763201011913&sdata=sreyG1oog91mQS95GgE9oEzrLJlUDpc8Fv%2BkVfjjgyA%3D&reserved=0

serverless-platforms-blazing-fast-aea0e9951bd0


You can refer to the relevant source code here:

- 
https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fapache%2Fincubator-openwhisk%2Fblob%2F&data=02%7C01%7C%7Ce89789d7d45b4339333108d4f4f0f921%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636402763201168168&sdata=umoCHgWui%2BP6ZWcqt5x1ppujQqRArduVZ4y%2BRx2lJZk%3D&reserved=0

master/core/invoker/src/main/scala/whisk/core/

containerpool/ContainerProxy.scala

- 
https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fapache%2Fincubator-openwhisk%2Fblob%2F&data=02%7C01%7C%7Ce89789d7d45b4339333108d4f4f0f921%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636402763201168168&sdata=umoCHgWui%2BP6ZWcqt5x1ppujQqRArduVZ4y%2BRx2lJZk%3D&reserved=0

master/core/invoker/src/main/scala/whisk/core/containerpool/ContainerPool.

scala


Anything more you can think of for your use-case?


Cheers,

Markus


Am 06. September 2017 um 07:50 schrieb mandeep gandhi <

[email protected]<mailto:[email protected]>>:


Hi,


I was looking for the support of warm containers for JVM and Python based

containers. I have a use case where I want to run some scala/java micro

services and some TensorFlow containers for my workflow.


Now as these containers would take some seconds to get up, I would like to

know -


a. What is the current status for the same?

b. How can we contribute to it if the support is missing?



Thanks,

Mandeep Gandhi

Reply via email to