Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Performance tests for the invocation loop #377

Open
fabianfett opened this issue Sep 27, 2024 · 1 comment
Open

Performance tests for the invocation loop #377

fabianfett opened this issue Sep 27, 2024 · 1 comment
Milestone

Comments

@fabianfett
Copy link
Member

fabianfett commented Sep 27, 2024

re-enable the performance test that was available in v1.

This requires

  • MockServer to be Swift 6 compliant
  • re-implement the MAX_REQUEST that was available in v1 (to avoid an infinite loop when pointing the runtime against the mock server)
@fabianfett fabianfett added this to the 2.0 milestone Sep 27, 2024
@sebsto
Copy link
Contributor

sebsto commented Sep 27, 2024

Other ideas

sebsto added a commit that referenced this issue Jan 22, 2025
Rewrite to MockServer (used only for performance testing and part of a
separate target) to comply with Swift 6 language mode and concurrency.

The new MockServer now uses `NIOAsyncChannel` and structured
concurrency.

Instead of adding support to
[MAX_REQUEST](https://github.com/swift-server/swift-aws-lambda-runtime/blob/11756b4e00ca75894826b41666bdae506b6eb496/Sources/AWSLambdaRuntimeCore/LambdaConfiguration.swift#L53)
environment variable like v1 did, we implemented support for
`MAX_REQUEST` environment variable in the MockServer itself. It closes
the connection and shutdown the server after servicing MAX_INVOCATIONS
Lambda requests). This allow to add the MAX_REQUEST penalty on the
MockServer and not on the LambdaRuntimeClient.

However, currently, the LambdaRuntimeClient does not shutdown when the
MockServer ends. I created
#465 to
track this issue.

See #377
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

No branches or pull requests

2 participants