AWS Java Lambda 与环境变量
来源:互联网 发布:全职高手周边淘宝网 编辑:程序博客网 时间:2024/06/06 13:16
一句话概要:对 Lambda 环境变量的任何改动都会引起一次 Lambda 的冷启动,大可放心在 handleRequest(...) 方法外使用环境变量。
从 AWS 上 Java Lambda 应用记要 中,我学到了 Lambda 的实例是跨请求共享的,所以为使用 Lambda 配置的环境变量时曾写出了下面复杂而多余的 AWS Lambda 代码:
public class Handler implements RequestHandler<SNSEvent, String> {
private int threadPoolSize = getThreadPoolSizeFromEnv();
private ExecutorService threadPool = Executors.newFixedThreadPool(threadPoolSize);@Override
public String handleRequest(SNSEvent snsEvent, Context context) {int configuredThreadPoolSize = getThreadPoolSizeFromEnv();
if(configuredThreadPoolSize != threadPoolSize) {
threadPoolSize = configuredThreadPoolSize;
threadPool = Executors.newFixedThreadPool(threadPoolSize);
}return "Hello Lambda";
}private int getThreadPoolSizeFromEnv() {
return Integer.parseInt(System.getenv().getOrDefault("threadpool_size", "50"));
}
}
这段代码看起来很在理,既然 Lambda 实例是共享的,那么在必变环境变量之后就可能不会重新初始始化实例,所以在每次的请求方法中对比如果环境变量值改动了就重新用最新的配置值来初始化线程池。然而上面的代码结结实实是多余的,真是把 Lambda 想得太简单了,如果是很多环境变量岂不是逐一判断。 阅读全文 >>
- AWS Java Lambda 与环境变量
- AWS Lambda目前已经支持环境变量
- AWS 上 Java Lambda 应用记要
- AWS Lambda 常见问题
- AWS Lambda 入门到放弃
- AWS Lambda服务初体验
- AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)
- JAVA与环境变量
- JAVA安装与环境变量
- 试用AWS的Lambda和API Gateway
- AWS Lambda: 云计算领域的MapReduce
- 环境变量与JAVA环境变量的配置
- Java SE 8 Lambda 特性与基本原理
- [Java 8] (6) Lambda与资源管理
- Java匿名内部类与Lambda表达式
- Java SE 8 Lambda 特性与基本原理
- Java函数式编程与Lambda表达式
- 配置TOMCAT 与 JAVA环境变量
- 代码整洁之道(Clean Code) 笔记(一)
- 538. Convert BST to Greater Tree
- 自学中的 Django 坑
- AWS 上 Java Lambda 应用记要
- 文章标题
- AWS Java Lambda 与环境变量
- python使用qq邮箱发邮件
- QML on Android 在小米5s手机上中文字体显示异常
- Could not determine the class-path for interface com.android.builder.model.AndroidProject
- 《Android第一行代码》之UI
- (九)多线程
- input 输入框自动联想功能
- php笔试题
- hdu1242