What determines number of simultaneous connections

前端 未结 6 1592
予麋鹿
予麋鹿 2021-01-31 19:06

In a Java servlet environment, what are the factors that are the bottleneck for number of simultaneous users.

  1. Number of HTTP connections the server can allow per
6条回答
  •  一整个雨季
    2021-01-31 19:16

    Number of HTTP connections the server can allow per port

    Unlimited except by kernel resources, e.g. FDs, socket buffer soace, etc.

    Number of HTTP connections the server can allow across several ports (I can have multiple WAS profiles on several HTTP ports)

    As the number of connections per port is unlimited, this irrelevant.

    Number of servlets in pool

    Irrelevant except insofar as it increases the rate of incoming requests.

    Number of threads configured for WAS to use to service connections

    Relevant in an indirect way, see below.

    RAM available to server (is there any any correletation between number of service threads assuming 0-memory leak in application)

    Relevant if it limits the number of threads below the configured number of threads mentioned above.

    The fundamental limitation is request service time. The shorter, the better. The longer it is, the longer the thread is tied up in that request, the longer wait queues get, ... Queuing theory dictates that the 'sweet spot' is no more than 70% server utilization. Beyond that, wait times grow rapidly with increasing utilization.

    So anything that contributes to request service time is significant: for example, thread pool size, connection pool size, concurrency bottlenecks, ...

提交回复
热议问题