In previous articles, I have mentioned about AWS S3 Interview questions and answers and AWS EC2 Interview Questions and answer, but now in this article, I have provided AWS lambda interview questions with answers, which can be helpful for any AWS user.

AWS-lambda-interview-questions-answers-min.png

What is Serverless Computing?

Serverless computing is an architecture where code execution is fully managed by a cloud provider, instead of the traditional method of developing applications and deploying them on servers.

It means developers don't have to worry about managing, provisioning and maintaining servers when deploying code.

Serverless technologies feature automatic scaling, built-in high availability, and a pay-for-use billing model to increase agility and optimize costs.

What is AWS Lamda?

AWS Lambda is a serverless, event-based computing platform that Amazon offers as part of Amazon Web Services. It is a computing service which runs code to events and automatically manages the computing resources that this code requires.

It was first released in November,2014.

List some limitations of AWS Lambda?

Here are some of the limitation of AWS lambda:

  • The disk space (ephemeral) is limited to 512 MB.
  • The default deployment package size is 50 MB.
  • The memory range is from 128 to 3008 MB.
  • The maximum execution timeout for a function is 15 minutes

Which languages are supported in AWS Lambda?

All popular languages are supported like Python, Node.js, GO, .NET Core/C#, Java etc.

What events can trigger an AWS Lambda function?

You can invoke Lambda functions directly using the Lambda console, a function URL HTTP(S) endpoint, the Lambda API, an AWS SDK, the AWS Command Line Interface (AWS CLI), and AWS toolkits. You can also configure other AWS services to invoke your function, or you can configure Lambda to read from a stream or queue and invoke your function.

Lambda-based applications (also known as serverless applications) are composed of functions triggered by events. A standard serverless application consists of one or more functions triggered by events such as object uploads to Amazon S3, Amazon SNS notifications, or API actions.

What are aws lambda path parameters?

AWS lambda path parameter is used to test query string parameters in the AWS console.

What is Auto-scaling in AWS Lambda?

Auto Scaling is an application in AWS that helps in target tracking scaling policy that adjusts provisioned concurrency levels automatically.

Basically, Lambda automatically scales out for incoming requests, if all existing execution contexts (lambda instances) are busy.

What is an AWS Lambda application?

An AWS Lambda application is a combination of Lambda functions, event sources, and other resources that work together to perform tasks.

What is an external extension? List some Lambda runtimes external extensions?

An external extension runs in a separate process from the Lambda function. Lambda starts a process for each extension in the /opt/extensions/ directory.

Some Lambda runtimes external extensions are:

  • NET Core (C#/PowerShell)
  • Custom runtime ( provided )
  • Custom runtime on Amazon Linux 2 
  • Java 11 (Corretto) ( java11 )
  • Java 8 (Corretto) ( java8. al2 )

What is  AVX2 vectorization in Lambda?

Advanced Vector Extensions 2 (AVX2) is a vectorization extension to the Intel x86 instruction set that can perform single instruction multiple data (SIMD) instructions over vectors of 256 bits.

For vectorizable algorithms with highly parallelizable operation, using AVX2 can enhance CPU performance, resulting in lower latencies and higher throughput.

Can an AWS Lambda function call another function using Node.js?

Yes, it is possible using Node.Js using aws-sdk

var aws = require('aws-sdk');
var lambda = new aws.Lambda({
  region: 'us-west-2' //change to your region
});

lambda.invoke({
  FunctionName: 'name_of_your_lambda_function',
  Payload: JSON.stringify(event, null, 2) // pass params
}, function(error, data) {
  if (error) {
    context.done('error', error);
  }
  if(data.Payload){
   context.succeed(data.Payload)
  }
});

How to pass a querystring or route parameter to AWS Lambda from Amazon API Gateway?

All you need to do is check, "Use Lambda Proxy integration", under Integration Request, under the resource.

You can then access query parameters, path parameters and headers like so

event['pathParameters']['param1']
event["queryStringParameters"]['queryparam1']
event['requestContext']['identity']['userAgent']
event['requestContext']['identity']['sourceIP']

What does Malformed Lambda proxy response means and how to resolve?

Usually, when you see Malformed Lambda proxy response, it means your response from your Lambda function doesn't match the format API Gateway is expecting, like this

{
    "isBase64Encoded": true|false,
    "statusCode": httpStatusCode,
    "headers": { "headerName": "headerValue", ... },
    "body": "..."
}

If you are not using Lambda proxy integration, you can login to API Gateway console and uncheck the Lambda proxy integration checkbox.

Also, if you are seeing intermittent Malformed Lambda proxy response, it might mean the request to your Lambda function has been throttled by Lambda, and you need to request a concurrent execution limit increase on the Lambda function. 

Source

You may also like to read:

DevOps interview questions and answers

AWS S3 Interview questions and answers

AWS EC2 Interview Questions and answer

Postman and API Testing Interview questions with answers