AWS Lambda 第一个例子Hello (JAVA)

什么是Serverless(无服务器计算)

行业通常所说的Serverless,主要是指"无服务器计算(Serverless Computing)"。**无服务器计算,**并不是真的不需要服务器,而是说,对于用户,服务器变得"不可见"了。

应用场景

【场景1:实时文件处理】可以使用 Amazon S3 触发 Amazon Lambda,以便在上传数据后立即进行处理。例如,可以使用 Lambda 实时创建图像缩略图、转换视频代码、建立文件索引、处理日志、验证内容以及聚合和筛选数据。

【场景2:移动互联网后端服务】可以使用 Amazon Lambda 和 Amazon API Gateway 构建后端来验证和处理 API 请求。

【场景3:Web应用程序】通过将 Amazon Lambda 与其他AWS服务相结合,开发人员可以构建功能强大的 Web 应用程序,从而可自动扩展和收缩,并跨多个数据中心在高可用配置中运行,而无需在可扩展性、备份或多数据中心冗余方面执行任何管理工作。

创建一个Maven项目

  1. pom.xml
XML 复制代码
<dependencies>
    <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-lambda-java-core</artifactId>
        <version>1.2.0</version>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-shade-plugin</artifactId>
            <version>2.3</version>
            <configuration>
                <createDependencyReducedPom>false</createDependencyReducedPom>
            </configuration>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>shade</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
  1. 编写输入类RequestClass
java 复制代码
package example;

public class RequestClass {
    String firstName;
    String lastName;
    public String getFirstName() {
        return firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    public RequestClass(String firstName, String lastName) {
        this.firstName = firstName;
        this.lastName = lastName;
    }

    public RequestClass() {
    }
}
  1. 编写输出类ResponseClass
java 复制代码
package example;

public class ResponseClass {
    String greetings;

    public String getGreetings() {
        return greetings;
    }

    public void setGreetings(String greetings) {
        this.greetings = greetings;
    }

    public ResponseClass(String greetings) {
        this.greetings = greetings;
    }

    public ResponseClass() {
    }
}
  1. 编写主函数
java 复制代码
package example;

import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;

public class Hello implements RequestHandler<RequestClass, ResponseClass>{  
    public ResponseClass handleRequest(RequestClass request, Context context){
        String greetingString = String.format("Hello %s, %s.", request.firstName, request.lastName);
        return new ResponseClass(greetingString);
    }
}
  1. 创建lambda函数

上传jar包

测试,输入json

点击测试后查看运行结果

参考:

Amazon Lambda的功能与应用场景 | AWS Serverless_aws lambda 哪些应用-CSDN博客

https://www.cnblogs.com/wenjiayi/p/13251644.html

相关推荐
QYR-分析2 分钟前
算力下沉,低空新支点:全球无人机机载计算盒市场竞争与发展研判
云计算·无人机
A-刘晨阳11 分钟前
GitLab + ArgoCD 实现 Kubernetes GitOps 自动化部署
运维·人工智能·git·kubernetes·自动化·云计算·argocd
范桂飓1 天前
AWS Strands Agents 技术解析
人工智能·云计算·aws
workflower1 天前
AI 产业链带动效应加速,催生AI 原生企业
人工智能·机器学习·机器人·云计算·无人机
GPU实战笔记2 天前
云端服务启动后浏览器访问失败:先查端口链路还是重装应用?
云计算·web服务·故障排查·端口访问
sbjdhjd2 天前
云安全 | Docker 容器逃逸复盘(二):2375 未授权接口如何突破容器管理边界
网络安全·docker·云原生·数据挖掘·开源·云计算·云安全
star_start_sky2 天前
华为认证 HCIA、HCIP、HCIE 怎么选?数通、云、存储、安全路线详解
华为云·云计算·华为认证·技术学习·备考指南
翼龙云_cloud2 天前
阿里云国际代理商:ECS部署DeepSeek大模型指南
服务器·阿里云·大模型·云计算
GPU实战笔记2 天前
云端任务输出增长后:本地扩容数据盘与项目网盘的关机计费边界
云计算·gpu租用·云端gpu·存储计费·项目网盘