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

相关推荐
AKAMAI5 小时前
从客户端自适应码率流媒体迁移到服务端自适应码率流媒体
人工智能·云计算
G311354227311 小时前
从零开始 通义千问大模型本地化到阿里云通义千问API调用
阿里云·云计算
Akamai中国12 小时前
提升 EdgeWorker 可观测性:使用 DataStream 设置日志功能
人工智能·云计算·云服务
XINVRY-FPGA14 小时前
XCVP1802-2MSILSVC4072 AMD Xilinx Versal Premium Adaptive SoC FPGA
人工智能·嵌入式硬件·fpga开发·数据挖掘·云计算·硬件工程·fpga
孤廖19 小时前
终极薅羊毛指南:CLI工具免费调用MiniMax-M2/GLM-4.6/Kimi-K2-Thinking全流程
人工智能·经验分享·chatgpt·ai作画·云计算·无人机·文心一言
伞啊伞19 小时前
DR模式部署
云计算
wanhengidc1 天前
云手机性能如何?
运维·服务器·科技·智能手机·云计算
禁默1 天前
汽车领域智能体开发全解析—腾讯云黑客松Agent应用创新挑战赛微信公众号赛道实战复盘
云计算·汽车·腾讯云·智能体
wanhengidc2 天前
云手机中分布式存储的功能
运维·服务器·分布式·游戏·智能手机·云计算
syounger2 天前
奔驰全球 IT 加速转型:SAP × AWS × Agentic AI 如何重塑企业核心系统
人工智能·云计算·aws