Skip to content

Conversation

@hagen-p
Copy link
Collaborator

@hagen-p hagen-p commented Jan 9, 2026

…dling

This update significantly improves the load generator's memory efficiency and AI interaction handling:

Memory Optimizations:

  • Implement browser reuse pattern to prevent memory leaks from repeated browser launches
  • Add --aggressive-cache-discard Chrome flag to prevent cache accumulation
  • Only close pages between cycles, not the entire browser process
  • Add ensureBrowser() function for connection health checking

AI Response Improvements:

  • Wait for AI responses using correct [data-cy='AIAnswer'] selector
  • Add proper delays (500ms pre-request, 1500ms post-response) for complete telemetry capture
  • Implement graceful 15s timeout with fallback for slow AI responses
  • Ensure RUM telemetry captures full AI interaction lifecycle

Feature Enhancements:

  • Support multiple random product ordering (1-3 products per cycle)
  • Add configurable product IDs via PRODUCT_IDS env variable
  • Add configurable cycle delay via CYCLE_DELAY_MS env variable (default: 1000ms)
  • Improved logging with detailed progress indicators

This makes the load generator suitable for long-running scenarios without memory accumulation issues.

Changes

Please provide a brief description of the changes here.

Merge Requirements

For new features contributions, please make sure you have completed the following
essential items:

  • CHANGELOG.md updated to document new feature additions
  • Appropriate documentation updates in the docs
  • Appropriate Helm chart updates in the helm-charts

Maintainers will not merge until the above have been completed. If you're unsure
which docs need to be changed ping the
@open-telemetry/demo-approvers.

…dling

This update significantly improves the load generator's memory efficiency and AI interaction handling:

Memory Optimizations:
- Implement browser reuse pattern to prevent memory leaks from repeated browser launches
- Add --aggressive-cache-discard Chrome flag to prevent cache accumulation
- Only close pages between cycles, not the entire browser process
- Add ensureBrowser() function for connection health checking

AI Response Improvements:
- Wait for AI responses using correct [data-cy='AIAnswer'] selector
- Add proper delays (500ms pre-request, 1500ms post-response) for complete telemetry capture
- Implement graceful 15s timeout with fallback for slow AI responses
- Ensure RUM telemetry captures full AI interaction lifecycle

Feature Enhancements:
- Support multiple random product ordering (1-3 products per cycle)
- Add configurable product IDs via PRODUCT_IDS env variable
- Add configurable cycle delay via CYCLE_DELAY_MS env variable (default: 1000ms)
- Improved logging with detailed progress indicators

This makes the load generator suitable for long-running scenarios without memory accumulation issues.
@hagen-p hagen-p merged commit 7217355 into main Jan 9, 2026
5 checks passed
@hagen-p hagen-p deleted the speedup-loadgen branch January 9, 2026 16:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant