gcs文件分片映射函数,用于以任意比例遍历gcs文本文件,适用于google app engine,python标准环境

im-gcsfilesharded的Python项目详细描述


#appengine task utils
这是appengine任务utils库的repo。它生成appenginetaskutils包

您可以在[此处]联机找到该包(https://pypi.python.org/pypi/appengineaskutils)。

您还需要设置自动售货机,请参见[此处的应用程序引擎自动售货机说明](https://cloud.google.com/app engine/docs/python/tools/using-libraries-python-27)。

此decorator函数设计用于替换[延迟](https://cloud.google.com/appengine/articles/deferred)。


对于taskutils.task,您需要将以下内容添加到app.yaml和/或\<;servicename \>;.yaml文件:

handlers:
-url://u ah/task/*
script:taskutils.app
login:admin


此规则为任务创建一个通用处理程序,以便将工作延迟到后台推送任务。

您的模块如下:

from taskutils import task


做一些事情…

只需正常调用函数,例如:



这是可能的,因为使用了[yccloudpickle](https://medium.com/the infinite machine/python-function-serialization-with-yccloudpickle-b2ff6b2ad5da.zei3n0ibu)作为底层序列化库。

包括其他函数:

def myouterfunction(mapf):

@task
def myinnerfunction(objects):
对于对象中的对象:
mapf(object)

…获取一些对象列表…
对于objects列表中的对象:
myinnerFunction(对象)


def dosomethingWithObject(对象):
…对某个对象执行操作…



正在后台对函数和参数进行序列化和反序列化。

将后台任务排队时,应用程序引擎任务和任务队列库可以接受一组参数。您可以将这些传递给装饰器:

@task(queue=“myqueue”,countdown=5)
def anotherfunction():
…做一些事情…

在**类google.appengine.api.taskqueue.task(payload=none,\*\*kwargs)**下,[此处](https://cloud.google.com/appengine/docs/python/refdocs/google.appengine.api.taskqueue)提供了任务所允许的参数的详细信息。task decorator支持两个额外的函数,具体如下。


做一些事情……

somefunction task=task(somefunction,queue=“myqueue”)


然后,当您准备好时可以调用task返回的函数:


somefunctiontask(1,2)


您也可以同时执行这两个步骤:



task(somefunction,queue=“myqueue”)(1,2)

例如:

@task(transactional=true)
def myserioustransactionaltask():


\includeheaders

您还需要接受函数中的headers参数。

@task(includeheaders=true)
def myfunctionwithheaders(amount,headers):
…Stuff…

MyFunctionWithHeaders(10)


App Engine将有用信息以标题形式传递给您的任务,例如x-app engine-taskretrycount。


但是@task使用了一个形式为/\&ah/task/\<;module\>;/\<;function\>;的url,例如:

///u ah/task/mymodule/somefunction


,这使得调试更加容易。









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

推荐PyPI第三方库


热门话题
java能否使用OpenJPA将一个实体持久化到多个持久化单元?   java如何访问当前按下的键   java singleton是否意味着哈希代码总是返回相同的值?   inputstream无法在Java中同时使用STDIN和STDERR读取程序输出   java运行时有多贵。getRuntime()与获取内存度量相结合   java AndroidStudio ListView适配器更新   java小程序请求未扩展实时会话   java是设置布尔值所必需的关键部分?   java比较两个字符串,并突出显示发现的不匹配项   java带抽屉布局,无论哪个屏幕处于活动状态,如何在按下后退键时关闭应用程序?   爪哇:颜色有什么区别。黑色和彩色。黑色   Velocity模板中子类的java访问方法   java如何快速学习Drools或其他规则引擎   从Java应用程序访问时缓存数据库查询结果   java cassandra nodetool JPLISAgent。c错误   java我正在解析一个没有pubDate的RSS提要,有没有其他方法可以确定一个项目是何时发布的?