基于未来的gcs文件分片映射函数,用于以任何比例遍历gcs文本文件,用于google app engine,python标准环境

im-futuregcsfilesharded的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 IntelliJ找不到依赖项选项卡   java向字符串数组string[]添加元素并在Junit中测试结果   如何在eclipse中获取活动java项目的名称   如何使用java在mysql中插入时间   java ArrayList更新了插入一行,但Jtable仍然没有刷新   如何在JavaSwing中命名坐标(点)   java Matcher/模式不打印   java错误地设置了arraylist   使用UsernamePasswordCredential提供程序的java列表Azure AD   java在HTTP请求中设置UTC时间   未加载事件:jquery完整日历Java集成   java Maven插件依赖项无法从内部repo解析依赖项   Maven更新重置Java版本   java如何向中添加图片。带有Apache POI XWPF的docx,但不指定其大小   Java最大函数递归