Я использую AWS лямбда-функцию для приема сообщений, полученных на AWS SQS. Лямбда-функция будет далее вызывать мой сервис, но сейчас я пытался получать сообщения, отправленные в очередь SQS. Я сделал стандартную очередь в SQS и лямбда-функцию в Java. Я сделал новый лямбда-проект в Eclipse IDE, и это моя функция:
package com.amazonaws.lambda.demo;
import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;
public class LambdaFunctionHandler implements RequestHandler<String, String> {
@Override
public String handleRequest(String input, Context context) {
context.getLogger().log("Input: " + input);
return (String) input;
}
}
Файл не показывает никаких ошибок. Я экспортировал проект как файл .jar и загрузил файл jar в свою функцию лямбды. Я также указал обработчик в моей лямбда-функции (packageName.className). Если я проверяю лямбда-функцию, она хорошо выполнялась, но когда я отправляю сообщение в SQS, оно увеличивает число сообщений в message flight
, которое я прочитал, и являются сообщениями, не потребляемыми потребителем, что в моем случае является лямбда-выражением.
Пожалуйста, дайте мне знать, если что-то еще нужно.