【问题标题】:How to setup AWS Lambda service for a local server如何为本地服务器设置 AWS Lambda 服务
【发布时间】:2016-04-15 02:31:44
【问题描述】:

我正在尝试在本地网络上为 AWS Lambda 设置应用程序服务器,这样应用程序就不必到 Internet 上执行。我更喜欢使用 linux 机器,我的编程环境是 Java。

echo 中的技能将执行,然后与本地服务器通信,而不是上网并与亚马逊的应用程序服务器通信。

我的问题是:如何设置应用程序服务器来处理技能?我已经完成了来自 Amazon 的示例,我只需要让 linux 机器运行 Java 应用程序还是设置更多?我看到有 AMI(亚马逊系统映像),但我可以在本地部署它们还是只在 AWS 控制台上使用?

任何对此的见解都会很棒,谢谢。

这就是 echo 之间通常的交互方式:

User--->Echo--->Skill--->(Internet)Applicaton 服务器(我使用的是亚马逊托管的 AWS lambda)

我想使用: 用户--->Echo--->Skill--->(LAN)应用服务器(从未使用过互联网)。

目前我已经设置了 echo 和一个技能,但局域网上没有应用程序服务器。应用服务器需要什么? JAWS 之类的?

【问题讨论】:

  • 检查可能的重复问题 ^ 以获得答案。目前尚不清楚您要做什么。但也许设置一个调用您的 Lambda 函数的 API Gateway 获取/发布访问是您正在寻找的?如果你这样做,你可以从任何服务器调用你的函数,无论是本地的还是非本地的(假设有正确的权限)。
  • 我想为 echo 开发一个应用程序/技能(不是测试)。但我不想使用亚马逊的aws。他们有自己的网络服务,但我想设置自己的服务器,我可以在本地部署(而不是通过互联网)。我正在查看您发布的链接,谢谢。但我只是有点担心,因为它只是为了测试。
  • 因此,只需在本地编写和使用您的应用程序,并使用 AWS API Gateway 设置 API 访问点。看起来应该可以。
  • 所以我在开发者门户上做的技能会指向我局域网上的aws api网关?

标签: java linux amazon-web-services aws-lambda


【解决方案1】:

我不确定这个问题是否仍然相关,但我正在使用 DEEP Framework 在本地测试代码和/或将其部署在 AWS Lambda 上。看看这个:

npm install deepify -g

deepify run-lambda --help

  run-lambda@1.6.8 - Run Lambda function locally 

  Usage example: deepify run-lambda path/to/the/lambda -e='{"Name":"John Doe"}' 

  Arguments:  
    path: The path to the Lambda (directory of handler itself) 

  Options:  
    --event|-e: JSON string used as the Lambda payload 
    --skip-frontend-build|-f: Skip picking up _build path from the microservices Frontend 
    --db-server|-l: Local DynamoDB server implementation (ex. LocalDynamo, Dynalite) 
    --version|-v: Prints command version 
    --help|-h: Prints command help

另外,您可能需要考虑使用server 选项:

deepify server --help

  server@1.6.9 - Run local development server 

  Usage example: deepify server path/to/web_app -o 

  Arguments:  
    path: The path to the Lambda (directory of handler itself) 

  Options:  
    --build-path|-b: The path to the build (in order to pick up config) 
    --skip-frontend-build|-f: Skip picking up _build path from the microservices Frontend 
    --skip-backend-build|-s: Skip building backend (dependencies installation in Lambdas and linking aws-sdk) 
    --skip-build-hook|-h: Skip running build hook (hook.build.js) 
    --port|-p: Port to listen to 
    --db-server|-l: Local DynamoDB server implementation (ex. LocalDynamo, Dynalite) 
    --open-browser|-o: Open browser after the server starts 
    --version|-v: Prints command version 
    --help|-h: Prints command help 

披露:我是这个框架的贡献者之一

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-19
    • 2017-10-07
    • 1970-01-01
    相关资源
    最近更新 更多