How many concurrent requests can dockerd handle?

We have 1 swarm cluster with 3 managers and 10 workers for performance test. When 100 concurrent requests(create service) sent to one swarm manager, dockerd may accept all the requests to dispatch to workers. But if we increase the num of concurrent requests, the dockerd error log says:

Error creating service serviceXXX: rpc error: code = 4 desc = context 
deadline exceeded"

Is there a default value of max concurrent requests that dockerd can handle in code? How could we increase the concurrent requests that dockerd can process successfully?

  • How to create a web based console that interacts with the command line
  • Log level in 0.8.2 not correctly configured?
  • Editing files using editors in Docker with Vagrant (on Mac)
  • Big size of python image in Docker
  • Kubernetes access labels from containers
  • Dockerfile: Setup SSH key for Bitbucket
  • The daemon is version 17.03.

  • docker run container happens error when mapped the container's port with machine
  • Jenkins pipeline: docker.withServer(…) does not execute docker commands on remote server
  • Increasing disk space for Agents/Worker nodes in Azure Container Service
  • Any way to remove docker container and image automatically even after unsuccessful build?
  • Docker scale with one-to-one links
  • Colorized output from docker to websocket
  • One Solution collect form web for “How many concurrent requests can dockerd handle?”

    As commented in issue 29987, this error message is not very explicit:

    I think whenever we encounter a context deadline exceeded error, we should rewrite it to a coherent explanation of what timed out, and perhaps list possible reasons that could cause the timeout (loss of quorum, etc).

    When working on docker/docker-e2e, I had problems where things were timing out causing context deadline exceed errors, but the root cause of the timeout was some other error that was getting ignored, superseded, or otherwise buried.

    As detailed in issue 33631:

    This error can have various causes (See this search for existing issues mentioning this error).

    The error itself is quite generic, and could mean that the manager was not able to communicate with other managers in the cluster.
    From just the error, it’s not easy to discover why it fails to communicate (it can be either a bad network connection, other managers did not properly re-join the cluster, therefore you lost quorum, or it could be if (e.g.) managers did not have a static IP-address, and the IP-address changed – which is currently not supported).

    You can see a similar case here but this happens also with less queries.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.