我们目前有 的要求:
APIEndPoint ---> aws Lambda ------> aws SQS -----> Java_service
其中 APIEndPoint , Lambda 和 AWS_SQS 是无服务器功能(新),需要与现有的 Java_service (不是无服务器功能)。
Lambda是NodeJS运行时
SQS名称为MyQueue
(例如)
如果它是另一个NodeJS lambda函数(例如sqsHandler
),则代替Java_service(如上),
APIendPoint ---> aws Lambda ------> aws SQS -----> aws Lambda 2
然后模板将是:
functions:
sqsHandlFunc:
handler: handler.sqsHandler
events:
- sqs:
arn:
Fn:GetAtt:
- MyQueue
- Arn
batchSize: 1
如果处理程序(sqsHandlFunc
)将awsSQS连接到Java服务(非无服务器),则SAM模板连接应该是什么? Java服务(springboot应用)可通过REST api获得
答案 0 :(得分:1)
您将无法通过SAM模板进行设置。您将需要使Java服务使用AWS Java SDK for SQS(特别是receiveMessage (see the receiveMessage section in this example)
)来轮询SQS队列。