当前位置: 首页 > news >正文

营销网站 深圳什么网站后台程序好用

营销网站 深圳,什么网站后台程序好用,wordpress页面层级,计算机做网站开题报告aws lambda使用在上一篇文章中#xff0c;我们实现了基于Java的aws lambda函数#xff0c;并使用CloudFront进行了部署。 由于我们已经设置了lambda函数#xff0c;因此我们将使用AWS API Gateway将其与http端点集成。 Amazon API Gateway是一项完全托管的服务#xff0c;… aws lambda使用 在上一篇文章中我们实现了基于Java的aws lambda函数并使用CloudFront进行了部署。 由于我们已经设置了lambda函数因此我们将使用AWS API Gateway将其与http端点集成。 Amazon API Gateway是一项完全托管的服务使开发人员可以轻松地创建发布维护监控和保护各种规模的API。 在AWS管理控制台中单击几下您可以创建一个API充当应用程序从您的后端服务例如Amazon Elastic Compute Cloud上运行的工作负载访问数据业务逻辑或功能的“前门”。 Amazon EC2在AWS Lambda或任何Web应用程序上运行的代码 对于此示例将API网关想象为一个HTTP连接器。 我们将更改原始功能以实现划分。 package com.gkatzioura.deployment.lambda;import com.amazonaws.services.lambda.runtime.Context; import com.amazonaws.services.lambda.runtime.RequestHandler;import java.math.BigDecimal; import java.util.Map; import java.util.logging.Logger;/*** Created by gkatzioura on 9/10/2016.*/ public class RequestFunctionHandler implements RequestHandlerMapString,String,String {private static final String NUMERATOR_KEY numerator;private static final String DENOMINATOR_KEY denominator;private static final Logger LOGGER Logger.getLogger(RequestFunctionHandler.class.getName());public String handleRequest(Map String,String values, Context context) {LOGGER.info(Handling request);if(!values.containsKey(NUMERATOR_KEY)||!values.containsKey(DENOMINATOR_KEY)) {return You need both numberator and denominator;}try {BigDecimal numerator new BigDecimal(values.get(NUMERATOR_KEY));BigDecimal denominator new BigDecimal(values.get(DENOMINATOR_KEY));return numerator.divide(denominator).toString();} catch (Exception e) {return Please provide valid values;}}} 然后我们将更改lambda代码并在s3上对其进行更新。 aws s3 cp build/distributions/JavaLambdaDeployment.zip s3://lambda-functions/JavaLambdaDeployment.zip 下一步是更新我们的CloudFormation模板并将api网关转发请求添加到我们的lambda函数。 首先我们必须声明我们的Rest API AGRA16PAA: {Type: AWS::ApiGateway::RestApi,Properties: {Name: CalculationApi}} 然后我们需要添加一个休息资源。 在DependsOn元素内我们可以看到rest api的ID。 因此cloudwatch将在创建其余api之后创建资源。 AGR2JDQ8: {Type: AWS::ApiGateway::Resource,Properties: {RestApiId: {Ref: AGRA16PAA},ParentId: {Fn::GetAtt: [AGRA16PAA,RootResourceId]},PathPart: divide},DependsOn: [AGRA16PAA]} 另一个关键部分是添加权限以便能够调用我们的lambda函数。 LPI6K5: {Type: AWS::Lambda::Permission,Properties: {Action: lambda:invokeFunction,FunctionName: {Fn::GetAtt: [LF9MBL, Arn]},Principal: apigateway.amazonaws.com,SourceArn: {Fn::Join: [,[arn:aws:execute-api:, {Ref: AWS::Region}, :, {Ref: AWS::AccountId}, :, {Ref: AGRA16PAA}, /*]]}}} 最后一步是添加api网关方法以便能够从api网关调用我们的lambda函数。 此外我们将添加api网关部署指令。 Deployment: {Type: AWS::ApiGateway::Deployment,Properties: {RestApiId: { Ref: AGRA16PAA },Description: First Deployment,StageName: StagingStage},DependsOn : [AGM25KFD]},AGM25KFD: {Type: AWS::ApiGateway::Method,Properties: {AuthorizationType: NONE,HttpMethod: POST,ResourceId: {Ref: AGR2JDQ8},RestApiId: {Ref: AGRA16PAA},Integration: {Type: AWS,IntegrationHttpMethod: POST,IntegrationResponses: [{StatusCode: 200}],Uri: {Fn::Join: [,[arn:aws:apigateway:,{Ref: AWS::Region},:lambda:path/2015-03-31/functions/,{Fn::GetAtt: [LF9MBL, Arn]},/invocations]]}},MethodResponses: [{StatusCode: 200}]} 因此我们最终完成了新的cloudwatch配置。 {AWSTemplateFormatVersion: 2010-09-09,Resources: {LF9MBL: {Type: AWS::Lambda::Function,Properties: {Code: {S3Bucket: lambda-functions,S3Key: JavaLambdaDeployment.zip},FunctionName: SimpleRequest,Handler: com.gkatzioura.deployment.lambda.RequestFunctionHandler,MemorySize: 128,Role: arn:aws:iam::274402012893:role/lambda_basic_execution,Runtime: java8}},Deployment: {Type: AWS::ApiGateway::Deployment,Properties: {RestApiId: { Ref: AGRA16PAA },Description: First Deployment,StageName: StagingStage},DependsOn : [AGM25KFD]},AGM25KFD: {Type: AWS::ApiGateway::Method,Properties: {AuthorizationType: NONE,HttpMethod: POST,ResourceId: {Ref: AGR2JDQ8},RestApiId: {Ref: AGRA16PAA},Integration: {Type: AWS,IntegrationHttpMethod: POST,IntegrationResponses: [{StatusCode: 200}],Uri: {Fn::Join: [,[arn:aws:apigateway:,{Ref: AWS::Region},:lambda:path/2015-03-31/functions/,{Fn::GetAtt: [LF9MBL,Arn]},/invocations]]}},MethodResponses: [{StatusCode: 200}]},DependsOn: [LF9MBL,AGR2JDQ8,LPI6K5]},AGR2JDQ8: {Type: AWS::ApiGateway::Resource,Properties: {RestApiId: {Ref: AGRA16PAA},ParentId: {Fn::GetAtt: [AGRA16PAA,RootResourceId]},PathPart: divide},DependsOn: [AGRA16PAA]},AGRA16PAA: {Type: AWS::ApiGateway::RestApi,Properties: {Name: CalculationApi}},LPI6K5: {Type: AWS::Lambda::Permission,Properties: {Action: lambda:invokeFunction,FunctionName: {Fn::GetAtt: [LF9MBL, Arn]},Principal: apigateway.amazonaws.com,SourceArn: {Fn::Join: [,[arn:aws:execute-api:, {Ref: AWS::Region}, :, {Ref: AWS::AccountId}, :, {Ref: AGRA16PAA}, /*]]}}}} } 最后但并非最不重要的一点是我们必须更新以前的cloudformation堆栈。 所以我们上传了我们的最新模板 aws s3 cp cloudformationjavalambda2.template s3://cloudformation-templates/cloudformationjavalambda2.template 我们要做的就是更新堆栈。 aws cloudformation update-stack --stack-name JavaLambdaStack --template-url https://s3.amazonaws.com/cloudformation-templates/cloudformationjavalambda2.template 我们的堆栈刚刚更新。 我们可以到达我们的api网关端点并尝试发布帖子。 curl -H Content-Type: application/json -X POST -d {numerator:1,denominator:2} https://{you api gateway endpoint}/StagingStage/divide 0.5 您可以在github上找到源代码。 翻译自: https://www.javacodegeeks.com/2016/10/java-aws-cloud-using-lambda-api-gateway-cloudformation.htmlaws lambda使用
http://wiki.neutronadmin.com/news/193682/

相关文章:

  • 自己做网站实时监控自己搭建服务器访问国外网站
  • 怎么做网站的后台维护贵州住房与城乡建设部网站
  • 酒店设计网站建设方案娱乐网站的代理怎么做
  • 文山建设5G网站万网建设网站
  • 图片 展示 网站模板百度一下就知道手机版
  • 移动电子商务网站建设网站建设策划书是有谁编写的
  • 哪个网站专门做邮轮旅游的中国建设银行官网站汽车卡
  • 建设网站出现400错误安卓市场官方版app下载
  • 多终端网站网站建设要学多少课程
  • 西安推荐企业网站制作平台北京网站建设的价格天
  • 本土建站工作室wordpress 整体搬家
  • 电子商务网站建设精英如何在手机上制作动画
  • 本地wordpress 跳转包头seo优化
  • 常州微网站建设网站模板开发
  • 太和县建设局网站网站首页模板下载
  • 斗鱼网站开发是用什么语言石家庄网站建设服务
  • 如何用七牛云做视频网站批量上传 wordpress
  • 中国免费网站申请许昌网站开发
  • 我怎么打不开建设银行的网站手工制作国庆节作品
  • co域名网站江苏常州武进区建设局网站
  • 长春网站建设长春网络推广培训班价格
  • 简单网站建设软件有哪些方面重庆品牌网站建设怎么样
  • 医院网站建设预算表在线制作文字
  • 电商网站制作教程wordpress 空间不足
  • 大厂县建设局网站太原网站开发培训
  • 什么是移动网站开发wordpress 招聘模板
  • 企业网站建设开始起步文章企业网查询是什么
  • 网站主机一般选哪种的大前端最新网站
  • 安徽建筑人才网淄博做网站跟优化
  • 建设安全员协会网站网站建设 长沙开福区