openstack storlet 文档(九):python storlet编写和部署指南
来源:互联网 发布:电话软件哪个好 编辑:程序博客网 时间:2024/06/05 20:11
这是Python特定的storlet编写和部署指南。 本指南补充了编写和部署更一般的指南,应该首先阅读。
实现一个storlet的python模块如下所示:
class <Class name>(object): def __init__(self, logger): self.logger = logger def __call__(self, in_files, out_files, params): """ The function called for storlet invocation :param in_files: a list of StorletInputFile :param out_files: a list of StorletOutputFile :param params: a dict of request parameters """
下面是一个类图,说明了in_files,out_files和logger后面的类。 该图仅列出了storlet writer预期使用的方法。
- StorletInputFile用于将对象的数据传输到storlet中。 StorletInputFile具有与python FileObject相同的读取方法。 尝试写入StorletInputFile会产生NotImplemented错误。 每当调用一个storlet时,都会提供这个类的一个实例。 要使用元数据则调用StorletInputFile.get_metadata方法。
- StorleOutputFile用于写入storlet输出。 StorletOutputFile具有与python FileObject相同的写入方法。 尝试从一个StorletOutputFile读取会产生NotImplemented错误。 每当调用一个storlet时,都会提供这个类的一个实例。 使用StorletInputFile.set_metadata方法设置对象的元数据。 请注意,storlet必须调用StorletInputFile set_metadata方法。 必须在写入数据之前调用StorletInputFile.set_metadata。
- StorletLogger。 StorletLogger类实现与Python日志记录器相同的日志方法。
当通过Swift REST API调用时,__call__方法将被如下调用:
1. in_files列表将包括一个或多个类型为StorleInputFile的元素,表示出现在请求的URI中的对象(以及可能的额外资源)。
2. out_files将包括一个类型为StorleOutputFile的单个元素,表示返回给用户的响应。
3. 参数是发送执行参数的字典。 这些参数可以在storlet执行请求中指定。
4. 一个StorletLogger实例。
Deploying a Python Storlet
以下是部署Python storlet的具体指导:
1. 包含storlet类实现的python模块的对象名称必须以.py结尾
2. 类实现依赖的任何python模块都应该以独立的.py()方式上传。
3. ‘X-Object-Meta-Storlet-Main’元数据key的格式为:<module_name>.<class_name> 例如,如果storlet名称是SimpleStorlet,并且它位于simple_storlet.py中,那么’X-Object-Meta-Storlet-Main’元数据key就是“simple_storlet.SimpleStorlet”
Deploying a Python Dependency
- 目前,关于什么作为依赖上传时没有限制的。
阅读全文
0 0
- openstack storlet 文档(九):python storlet编写和部署指南
- openstack storlet 文档(七):storlet编写和部署向导
- openstack storlet文档(三):storlet术语和角色
- openstack storlet 文档(四):storlet引擎
- openstack storlet文档(五):storlet API
- openstack swift 文档(八):Java Storlet 编写和部署指导
- openstack storlet文档(二)
- openstack storlet文档(六):IPython Notebook Integration
- OpenStack官方操作指南(2)配置和部署
- openstack-ha部署文档
- OpenStack Grizzly Multihost部署文档
- Python编写微信打飞机小游戏(九)
- [openstack swift] Deployment Guide部署指南
- SuperMap iCloudManager OpenStack平台部署指南
- 计算机软件开发文档编写指南
- 计算机软件开发文档编写指南
- 计算机软件开发文档编写指南
- 计算机软件开发文档编写指南
- 在一个字符串中找到第一个只出现一次的字符
- js基础
- 让浏览器可以访问我们的socket服务 (http协议入门)
- NekoHTML 学习笔记
- 软件测试类型按开发阶段的划分
- openstack storlet 文档(九):python storlet编写和部署指南
- Java Web 使用Servlet 实现上传图片功能!
- dom4j文件解析
- java.lang.ClassCastException: oracle.sql.TIMESTAMP cannot be cast to java.sql.Timestamp
- Yii
- UTF8和UCS2
- java线程(二)Thread类
- idea 启动tomacat报错
- XGBoost参数调优