mitre / mitre/HTTP-Proxy-Servlet

PoolingHttpClientConnectionManager maxConnections causing issues

Open
#146 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Java
Stars
1.5k
Forks
557
PR merge metrics
No merged PRs in 30d

Description

As I understand it, this servlet does not provide a way to increase the max connections or max connections per route on the PoolingHttpClientConnectionManager. As a result, a few long running requests from a handful of clients can quickly cause connections for all clients to hang until the long running requests complete. As far as I could tell, there's no obvious way to change the values of those two properties in the library.
I created a fork to allow setting both of them to custom values (though since it is one route per servlet, I probably could have just used a single init param to set both values). Should I create a pull request, or is there another, better way to set the max connections?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the servlet code that creates and configures PoolingHttpClientConnectionManager, then review how its maximum connections and maximum connections per route are set. Check the proposed fork mentioned in the issue for the intended configuration approach, and verify that concurrent long-running requests no longer prevent other clients from obtaining connections.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.