Skip to content

Various changes to address some performance issues#7287

Draft
time4tea wants to merge 15 commits intozaproxy:mainfrom
time4tea:remove-blocking-a-bit
Draft

Various changes to address some performance issues#7287
time4tea wants to merge 15 commits intozaproxy:mainfrom
time4tea:remove-blocking-a-bit

Conversation

@time4tea
Copy link
Copy Markdown

Hi -

Related to zaproxy/zaproxy#9302

Here are a set of changes that addressed, for me, the serious performance issues I found trying to use ZAP to spider a website.

This, and the associated PR in the other project - transformed the system from a very slow thing with an unresponsive GUI to something that was very fast, and GUI was responsive throughout.

I appreciate that this PR is probably not something that can be merged in. However, I'm sorry that I don't have the time to split it, and shepherd it through a review process. However, it is offered as-is if it is useful.

The main changes are:

  • See where some counters are updated a lot, which previously caused an immediate AWT Event, and instead defer these.
  • Use Glazed lists for some table models - there is more that could be done here, this only was done for the tables i needed.
  • Split out in some cases calls that cause AWT Event, and the actual AWT method - previously there were two different paths in one method depending on which thread.
  • in Spider* try to understand how certain objects are constructed, and simplify - moving setXXX to constructor where possible - so objects were ready after construction.
  • replace a use of URL (deprecated) with URI - which is much more performant.
  • Update some tests where it seemed to make sense.
  • Add some images (might not need to merge these) to show how the thread blocking looks before and after the changes here and in the other PR.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 18, 2026

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

@time4tea time4tea changed the title Remove blocking a bit Various changes to address some performance issues Apr 18, 2026
@time4tea
Copy link
Copy Markdown
Author

I have read the CLA Document and I hereby sign the CLA

@psiinon
Copy link
Copy Markdown
Member

psiinon commented Apr 18, 2026

Logo
Checkmarx One – Scan Summary & Detailse4e895b6-19e7-4824-85af-db3bdd82ffc6


Fixed Issues (1) Great job! The following issues were fixed in this Pull Request
Severity Issue Source File / Package
LOW Heap_Inspection addOns/httpsInfo/src/main/java/org/zaproxy/zap/extension/httpsinfo/HttpsInfoOutputPanel.java: 246

Use @Checkmarx to interact with Checkmarx PR Assistant.
Examples:
@Checkmarx how are you able to help me?
@Checkmarx rescan this PR

@thc202 thc202 marked this pull request as draft April 18, 2026 09:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants