AWS Lambda 함수를 호출, 나열, 삭제 - AWS SDK for Java 2.x

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS Lambda 함수를 호출, 나열, 삭제

이 섹션에서는 AWS SDK for Java 2.x를 사용하여 Lambda 서비스 클라이언트를 사용하여 프로그래밍하는 예를 제공합니다.

Lambda 함수를 호출합니다.

LambdaClient객체를 만들고 해당 메서드를 호출하여 Lambda 함수를 호출할 수 있습니다. invoke InvokeRequest객체를 생성하여 함수 이름 및 함수에 전달할 페이로드와 같은 추가 정보를 지정합니다. Lambda 함수 이름은 arn:aws:lambda:us-east- 1:123456789012:function: 으로 표시됩니다. HelloFunction AWS Management Console에서 함수를 확인해 값을 검색할 수 있습니다.

페이로드 데이터를 함수에 전달하려면 정보가 포함된 객체를 만드십시오. SdkBytes 예를 들어 다음 코드 예제에서는 Lambda 함수에 JSON 데이터가 전달됩니다.

가져오기

import software.amazon.awssdk.services.lambda.LambdaClient; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.lambda.model.InvokeRequest; import software.amazon.awssdk.core.SdkBytes; import software.amazon.awssdk.services.lambda.model.InvokeResponse; import software.amazon.awssdk.services.lambda.model.LambdaException;

코드

다음 코드 예제는 함수를 호출하는 방법을 보여줍니다. Lambda

public static void invokeFunction(LambdaClient awsLambda, String functionName) { InvokeResponse res = null ; try { //Need a SdkBytes instance for the payload String json = "{\"Hello \":\"Paris\"}"; SdkBytes payload = SdkBytes.fromUtf8String(json) ; //Setup an InvokeRequest InvokeRequest request = InvokeRequest.builder() .functionName(functionName) .payload(payload) .build(); res = awsLambda.invoke(request); String value = res.payload().asUtf8String() ; System.out.println(value); } catch(LambdaException e) { System.err.println(e.getMessage()); System.exit(1); } }

에서 전체 예제를 참조하십시오. GitHub

Lambda 함수 나열

Lambda Client객체를 빌드하고 해당 listFunctions 메서드를 호출합니다. 이 메서드는 ListFunctionsResponse객체를 반환합니다. 이 개체의 functions 메서드를 호출하여 개체 목록을 반환할 수 있습니다 FunctionConfiguration. 목록을 반복하여 함수에 대한 정보를 검색할 수 있습니다. 예를 들어 다음 Java 코드 예제는 각 함수 이름을 가져오는 방법을 보여줍니다.

가져오기

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.lambda.LambdaClient; import software.amazon.awssdk.services.lambda.model.LambdaException; import software.amazon.awssdk.services.lambda.model.ListFunctionsResponse; import software.amazon.awssdk.services.lambda.model.FunctionConfiguration; import java.util.List;

코드

다음 Java 코드 예제는 함수 이름 목록을 검색하는 방법을 보여 줍니다.

public static void listFunctions(LambdaClient awsLambda) { try { ListFunctionsResponse functionResult = awsLambda.listFunctions(); List<FunctionConfiguration> list = functionResult.functions(); for (FunctionConfiguration config: list) { System.out.println("The function name is "+config.functionName()); } } catch(LambdaException e) { System.err.println(e.getMessage()); System.exit(1); } }

전체 예제를 참조하십시오. GitHub

Lambda 함수 삭제

LambdaClient객체를 빌드하고 해당 deleteFunction 메서드를 호출합니다. DeleteFunctionRequest객체를 생성하여 deleteFunction 메서드에 전달합니다. 이 개체에는 삭제할 함수의 이름과 같은 정보가 포함되어 있습니다. 함수 이름은 arn:aws:lambda:us-east- 1:123456789012:function: 으로 표시됩니다. HelloFunction AWS Management Console에서 함수를 확인해 값을 검색할 수 있습니다.

가져오기

import software.amazon.awssdk.services.lambda.LambdaClient; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.lambda.model.DeleteFunctionRequest; import software.amazon.awssdk.services.lambda.model.LambdaException;

코드

다음 Java 코드는 함수를 삭제하는 방법을 보여줍니다. Lambda

public static void deleteLambdaFunction(LambdaClient awsLambda, String functionName ) { try { DeleteFunctionRequest request = DeleteFunctionRequest.builder() .functionName(functionName) .build(); awsLambda.deleteFunction(request); System.out.println("The "+functionName +" function was deleted"); } catch(LambdaException e) { System.err.println(e.getMessage()); System.exit(1); } }

에서 전체 예제를 참조하십시오. GitHub