One Lambda, two services?

0

Can I have the same Lambda working as a REST service under API GW, and also consuming CloudWatch events? Or I need two separate? They would do exactly the same so I thought I could have the same JAR (I'm in Java) registered by both services, but I can't do it and don't know is it by design or I'm messing it up...
Thank you!

soco
已提問 4 年前檢視次數 2199 次
3 個答案
0
已接受的答案

There can't be two entry points. A single lambda has a single handler function, which would need to separate out the different event types.

Ellison
已回答 4 年前
0

It's certainly possible to register multiple triggers for a single lambda. We'd need to know the steps you're taking and the errors you're seeing to say more about what's going wrong in your case.

However, multiple triggers make things complicated, since you need to add logic for determining what kind of event you were invoked with, and then handle the different event formats before invoking the common code. It might be better to have two different lambdas to handle the different triggers. You might either include the common code in both deployment zips, or factor it into a layer.

Ellison
已回答 4 年前
0

I was thinking to have the same code acting as a REST service behind the API gateway, and also handle CloudWatch scheduled events. Thus there would be two entry points, no need to differentiate between inputs.

The errors I receive are from the Quarkus framework which won't support my idea, so I was curios whether it's a Lambda principle or a Quarkus limitation. I'll go anyway with two lambdas as you suggested but I'd like to understand the principle behind...

soco
已回答 4 年前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南