Which solution will meet these requirements?
Configure routing on the alias of the new function by using a weighted alias.
Configure a canary deployment type for Lambda.
Configure routing on the new versions by using environment variables.
Configure a linear deployment type for Lambda.
Explanations:
Configuring routing on the alias of the new function using a weighted alias allows the company to shift a fixed percentage of traffic to the new version while retaining the majority on the stable version. This method is effective for gradual rollouts and minimizes risk.
A canary deployment type for Lambda does allow for traffic shifting, but it typically involves deploying a new version to a small subset of users initially, followed by an evaluation period before a wider rollout. However, it does not specifically allow for a fixed percentage of traffic to be maintained over time like a weighted alias does.
Using environment variables to control traffic routing does not provide a direct mechanism for traffic shifting. Environment variables are typically used to configure the function behavior but do not manage version routing or traffic percentages effectively.
A linear deployment type for Lambda gradually shifts traffic from the old version to the new version over a specified time interval, but it does not offer the ability to set an initial fixed percentage for a long-term evaluation phase as a weighted alias would.