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?

  • pg_dump in docker: “could not open output file” “protocol error”
  • How to expose more ports on a running docker container
  • Docker containers in real life
  • How to use docker with drupal and drush?
  • Creating docker-machine
  • Installing netstat on docker linux container
  • The daemon is version 17.03.

  • Docker commands fails (in Windows)
  • Improve Spring-Boot startup in Docker
  • Docker-client: How to attach user input to attachStdin at runtime
  • Docker compose not finding my index.js
  • Only receiving MQTT messages in interactive mode within a docker container
  • How to user docker exec with zsh
  • 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.