lambda函数的aws服务实用程序

astromech的Python项目详细描述


Astromech-用于lambda功能的AWS服务实用程序

Astromech是一个实用程序的集合,我发现自己复制了所有lambda函数和无服务器 项目。为了把我的代码弄干,我把它们收集在一个图书馆里。

服务客户

Astromech为BOTO3服务客户端实现延迟初始化:

对于每个服务,都有一个全局客户机变量,可以在调用labmda函数之间重用。 集装箱。希望访问客户端的代码通过使用初始化它的client()函数来实现这一点 如有必要。

代码示例:

fromastromechimports3,dynamodbs3.client().get_object(Bucket=...,Key=...)dynamodb.table().get_item(Key=...)

localstack支持使操作变得简单

服务客户端初始化函数,查找环境变量LOCALSTACK_[SERVICE]_URL (例如,LOCALSTACK_S3_URL)。 如果它找到一个,那么它使用它的值作为boto3客户机函数的endpoint_url

使用LocalStack运行测试所要做的就是在本地设置这些变量 环境。不需要更改代码。 当然,这适用于任何其他可下载的aws服务版本,比如 DynamoDB local

实用功能

每个服务中都有一些实用功能。这些通常保存2-3行样板代码。不是很多, 但是对于在整个代码库中重复使用的非常常见的功能来说,这是值得的。

例如,为了检查S3上是否存在对象,必须发送一个^ {< CD5>}请求并捕获异常 如果它不存在。使用astromech.s3只需调用exists(bucket, key),就像使用本地 文件

为什么是“天体机械”?

在星球大战的宇宙中,天体机械是一种实用机器人,其中最著名的(是谁?)是R2-D2。

阅读有关Wookiepedia的更多信息。

R2-series astromech droids

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何运行一个在播放歌曲的同时创建和更改UI的方法?   eclipse错误:无法找到或加载主类Java,因为类文件anme和类名不同?   两个数字相加得到一个值的java算法   java我可以更改字符串吗?   java Hibernate 5.2:以编程方式从其他jar加载映射   java如何访问随机跳转到固定位置的二进制文件   java是解析器实现中文档的功能   Javasocket的两端齐平   java查找将两个非常大的整数之和除以相等块的步骤   java如何在Restlet中调用带超时的异步HTTP客户端   java如何从servlet请求将hashmap传递给jsp。塞塔提布特   java Spring MVC HTTP状态500–内部服务器错误,Servlet。servlet[dispatcher]的init()引发异常   java即使没有alpha通道,如何将PNGFiles加载为ARGB_8888?   java将subscribe的返回类型映射到其他类型   javascript如何在安卓 WebView中启用longpress操作下载图像?   java将字符串作为hashmap值的一部分添加到StringList中   JavaSpringAOP:代表类型声明其他方法或字段   Java将二进制序列转换为字符   java使用ApachePOI获取最后一行值   为什么要在FPS(每秒帧数)跟踪器中添加时间?(爪哇)