openwhisk-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tyson Norris <tnor...@adobe.com.INVALID>
Subject Concurrency in invoker http client
Date Mon, 25 Jun 2018 16:23:40 GMT
Hi -
As part of the support for concurrency in action containers, I have this PR open in the nodejs
action container: https://github.com/apache/incubator-openwhisk-runtime-nodejs/pull/41

I’ve been having real trouble getting concurrency tests to operate properly in travis env.

The behavior appears something like the http client is only allowing 2 concurrent requests
- additional requests are processed later. This is only happening in travis env, unfortunately.

A couple of questions:
* does anyone have advice for the org.apache.http.client to make it behave in travis env?
Using PoolingHttpClientConnectionManager for concurrency locally works swell - it only gives
me grief in travis, and only by processing requests in “more serial fashion” than when
I run it locally.
* at this point, I’m actively looking at replacing org.apache.http.client (which has been
discussed in the past) with PoolingRestClient (wrapper for akka http), but I’m not sure
how to best extend it to support retries - any pointers here?
    * Related to PoolingRestClient: A non-retry use of PoolingRestClient works great locally
with 100s of concurrent requests, but fails only in travis with "akka.stream.StreamTcpException:
Tcp command [Connect(172.17.0.9:8080,None,List(),Some(10 seconds),true)] failed because of
Connection refused” - I assume because the container takes longer to startup in travis,
and requires retries?

Thanks for any tips!
Tyson
Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message