elastic / elastic/fleet-server

fleet-server performance improvements

Open
#7,255 0 comments 0 reactions 0 assignees View on GitHub
Team:Elastic-Agent-Control-Plane
Dominant language
Go
Stars
113
Forks
117
Avg merge
1d 16h
Merged PRs (30d)
112

Description

In order to better assist scaling efforts we should audit the fleet-server codebase for any performance improvements we can make.

The performance improvements we should seek are:
- Reduce calls to elasticsearch where possible (merging two calls with a painless script is preferred over two separate ES updates)
- Reduce allocations in order to reduce heap size and reduce the work that the garbage collector has to do.
- Ensure struct alignment (easy to add automation to ensure this works)

Acceptance criteria:
- All changes must have benchmarks associated with them.
- Benchmarks should show a reduction in one of the tracked catagories
- Benchmark comparisons between the baseline and improvements - with `-memprofile` must be available for analysis

Focus will be directed towards high-use packages first.

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are named; begin by identifying the high-use fleet-server packages and establishing baseline benchmarks. Done means each performance change has benchmark comparisons, including -memprofile data, and demonstrates reduced Elasticsearch calls, allocations, or struct-padding waste.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend, performance
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.