简单地说,我们现在是Redis
在这篇博文中,您将学习如何集成AWS Lambda和万博体育彩复述,企业云。使用示例电影数据库应用程序,您将了解如何构建和部署两个Lambda函数,一个在Node.js,五分之一python。这两个Lambda函数用于与Redis数据库交互以插入、更新、删除和查询。应用程序使用再研究提供丰富查询和搜索功能的API。无服务器,使用AWS Lambda,符合微服务体系结构的发展趋势,因为它允许开发人员缩小业务“服务”的范围进入一个可以使用他们选择的编程语言实现的小项目。要了解更多信息,请观看下面的视频并继续阅读,以ag万博下载万博最新版本下载苹果快速了解AWS Lambda,并深入了解如何使用Redis Enterprise Cloud和Lambda构建应用程序:万博体育彩
如果您还不熟悉AWS Lambda公司的无服务器计算运行时,也称为“功能即服务”((美国联邦航空管理局)-以下是您需要了解的基本知识。(Lambda专家可以跳到下一节。)AWS Lambda允许应用程序根据需要运行函数以响应特定事件,这是构建事件驱动体系结构(EDA)应用程序的好方法。AWS Lambda函数完全由AWS管理,可以使用各种程序设计语言。也许AWS Lambda最好的部分是,开发人员通常不需要完全了解应用程序生命周期就可以使用ag万博下载万博最新版本下载苹果它。
可以使用几种不同的方法调用AWS Lambda:直接从AWS控制台调用,使用来自其他AWS服务的事件,例如社交网站,SQS,或运动,甚至从AWS控制台,CloudWatch,或S3在我们的示例电影数据库应用程序中,Lambda函数将使用HTTP REST端点调用,这是使用AWS API网关(您可以找到更多关于AWS Lambda函数调用的信息在文件中.)
AWS Lambda HTTP执行过程
具体而言,通过HTTP的请求被路由到AWS的API网关管理工具,该工具解析正文、标头和参数,然后使用此有效负载触发Lambda函数:
作为一名开发人员,您只需编写代码来公开REST端点,并将部署配置为在AWS API网关中公开REST端点。(我们将在下一节介绍示例电影数据库应用程序时对此进行进一步讨论。)
无服务器应用程序中的状态和数据管理
AWS Lambda是一个无状态环境。但在许多应用程序中,您仍然希望在服务或调用之间共享状态,Redis可以提供帮助。对于简单的状态管理,AWS开发人员通常使用ElastiCache,但许多应用程序需要的不仅仅是状态管理,它们还需要持久性、丰富的数据、高性能和查询模型。万博最新版本下载苹果ag万博下载万博体育彩复述,企业云在AWS上提供完全管理的服务(也支持Google Cloud和Microsoft Azure)。
现在,我们准备看看示例电影数据库应用程序,了解使用Redis Enterprise Cloud和AWS Lambda构建应用程序的关键步骤。万博体育彩
应用程序使用文档中记录的数据集重新搜索入门教程,其中包括一个电影目录,由Redis hash制作。如下图所示,前端是使用Vue.js,它调用REST端点以:
如上所述,应用程序利用AWS API网关、AWS Lambda和Redis企业云作为数据存储万博体育彩AWS密钥管理服务存储和加密Redis数据库密码。
要开始,您需要一些先决条件:
组装好所有组件后,让我们详细介绍安装和运行示例应用程序的过程。
步骤1:获取Redis企业云数据万博体育彩库信息
如果您尚未在Redis Enterprise Cloud上创建数据库,请使用我们的万博体育彩开始使用Redis模块指导
当您连接到Redis企业云时,您可以在web控制台中找到数据万博体育彩库连接信息;确保将模块“RediSearch 2”添加到数据库中。
将Lambda函数连接到Redis数据库需要以下属性:
步骤2:从GitHub获取项目
将存储库克隆到本地环境,并将其移动到项目目录
> git克隆https://github.com/redis-developer/aws-redis-cloud-demo.git>cd aws redis云演示
项目目录结构如下所示:
aws-redis-cloud-demo├──README。│├─前端=> Vue.js project│├─env.development => to set the Lambda URLs in dev mode│├─env. js project│├─│├─rammstein - du hast(2)——cat sound效果器整理www.catsound.com.cn/details/detail.asp?│├─rammstein - du hast(2)——cat sound效果器整理www.catsound.exe│├─rammstein - du hast(2)——cat sound效果器整理www.catsound.exe│├─rammstein - du hast(2)——cat sound效果器整理www.catsound.org│├─rammstein - du hast(2)——cat sound效果器整理www.catsound.org│├──readme。│├─rammstein - du hast(2)——cat sound效果器整理www.catsound.exe数据集>数据集>数据集>数据集>├──serverless。cat sound效果器整理www.catsound.org──cat sound效果器整理www.catsound.org──└──……
步骤3:将电影数据库数据集导入应用程序
该文件aws-redis-cloud-demo / movies-list-microservice / import_movies.redis包含将电影插入数据库的所有Redis命令。使用的命令包括:
要导入数据集,请打开终端并运行以下命令:
> export REDISCLI_AUTH=> redis-cli -h redis-18541.xxx.xxx .xxx.cloud.www.szfbf.com \ -p 18541 < movies-list-microservice/import_movies.redis . >
步骤4:配置应用程序以使用您的Redis企业云实例万博体育彩
在测试应用程序之前,必须使用Redis Enterprise Cloud数据库实例配置Node.js和Python服务。打开以下文件:万博体育彩
然后设置Redis主机、端口和密码:(REDIS_HOST、REDIS_PORT REDIS_PASSWORD)
步骤5:构建并运行电影微服务(Node.js)
按照此处列出的步骤构建和运行项目。(您还可以在项目的自述文件.)
>npm安装-g无服务器
2.转到movies-list-microservice目录
>cd电影列表微服务
3.安装依赖项
>npm安装
4.在本地运行Lambda函数
> npm开始
5.通过打开对REST服务的浏览器调用来测试服务:http://localhost:3000/api/movies/1
6.通过运行以下命令将功能部署到AWS环境,将服务部署到AWS:
>无服务器部署无服务器:堆栈更新已完成…服务信息服务:电影列表微服务阶段:api区域:us-east-1堆栈:电影列表微服务api资源:33 api键:无端点:GET-https://。执行api。 。amazonaws.com/api/movies/search GET-https:// 。执行api、 .amazonaws.com/api/movies/group_by/{field}GET-https:// 。执行api。 .amazonaws.com/api/movies/{id}POST-https:// 。执行api。 .amazonaws.com/api/movies/{id}功能:listMovies:movies list microservice api listMovies searchMovies:movies list microservice api searchMovies getMovie:movies list microservice api getMovie saveMovie:movies list microservice api saveMovie layers:None
7.通过将浏览器指向https://
注意:如果收到错误,请检查函数登录AWS监测看看发生了什么。
深入了解代码:
步骤6:构建并运行注释微服务(Python)
下面是构建和运行项目的步骤。(你也可以在项目中找到所有的信息自述文件.)
>cd电影评论microservice>python3-m venv酒杯环境>源酒杯环境/bin/activate
2.安装依赖项:
> PIP安装-r requirements.txt
3.设置AWS环境,运行以下命令,并配置您的ID和密码:
>aws配置aws访问密钥ID[None]:*********************BANG aws秘密访问密钥[None]:***************BANG默认区域名称[None]:us-west-2默认输出格式[None]:
4.通过运行以下命令将功能部署到您的AWS环境,将服务部署到AWS:
>chalice部署重用现有部署包。IAM角色的更新策略:电影评论微服务开发人员创建lambda函数:电影评论微服务开发人员创建Rest API资源已部署:-lambda ARN:ARN:aws:lambda:us-east-1:11111111:函数:电影评论微服务开发人员-Rest API URL:https://XXXXXXX.execute-api.us-east-1.amazonaws.com/api/
深入了解代码:
或者,您可以将Redis数据库密码存储在AWS密钥管理服务。您可以在项目中找到配置步骤文档.
步骤7:运行前端应用程序
>cd前端>npm安装
2.编辑.env.development文件设置电影和评论服务的URL:
VUE\u应用程序\u电影\u服务=https://。执行api。 。amazonaws.com/api VUE\u应用程序\u评论\u服务=https:// 。执行api。 。amazonaws.com/api
3.运行应用程序:
> NPM运行服务
4.打开浏览器,然后转到http://localhost:8084
您现在可以在应用程序中导航,更新和搜索电影,以及添加/删除评论。
或者,您可以使用S3和云锋在AWS环境中部署Vue应用程序并将其公开提供给用户。项目中对此进行了说明文档.
使用AWS Lambda和Redis企业云简化了服务的部万博体育彩署。使用Redi万博体育彩s企业云与RediSearch,您可以轻松查询Redis数据使用值,允许您使用Redis作为您的服务的主要数据库。
万博体育彩Redis Enterprise Cloud与Redis兼容,允许您轻松迁移现有的Redis部署,包括OSS和托管服务。您只需更改连接参数(如数据库端点)。执行实时迁移的方法有多种,包括:
除了再研究,R万博体育彩edis Enterprise Cloud允许您使用其他有前途的数据模型,例如图表,JSON,时间序列和布隆过滤器,并提供了在生产环境中至关重要的多种其他数据库功能,包括高可用性,可伸缩性,持久性,安全和active - active geo-distribution.
想了解更多信息吗?请查看我们的AWS re:发明主页并阅读以下教程和博客帖子: