Pipeline(队列)
更新时间:2021-04-29
队列分为免费型与私有型:
- 免费型队列中的转码任务分享百度智能云为音视频转码所提供的约400路720P转码计算资源。
- 私有型队列需额外采购,以便更好的满足那些对于转码时效性和稳定性有更高要求的用户的业务需求。
用户可以利用队列实现任务优先级。用户通过创建多个队列达到区分任务优先级的目的,将大部分任务创建至普通优先级队列,将高优的任务放入高优先级的队列,以利用队列先到先服务的工作原理来实现任务的优先级调整。
队列接口的各参数含义和取值请参考Pipeline API。
新建Pipeline
如下代码可以新建一个Pipeline,默认的capacity值为20:
pipeline_name = "your_pipeline";
source_bucket = "your_source_bucket";
target_bucket = "your_target_bucket";
# create a new pipeline
client.create_pipeline(pipeline_name, source_bucket, target_bucket);
列出全部Pipeline
如下代码可以列出用户所有的Pipeline:
response = client.list_pipelines()
for pipeline in response.pipelines:
print pipeline
查询指定的Pipeline
若只是查询某个Pipeline,则使用如下代码:
pipeline_name = "your_pipeline"
response = client.get_pipeline(pipeline_name)
print response
删除Pipeline
如下代码可以删除一个Pipeline:
pipeline_name = "your_pipeline"
response = client.delete_pipeline(pipeline_name)
print response
需要注意的是,如果Pipeline有关联的Job未完成,则Pipeline无法被删除,必须等Job执行结束后才能成功删除。
更新指定的Pipeline
更新某个Pipeline的通知,使用如下代码:
pipeline_name = "your_pipeline"
notification = "your_notification"
pipeline = self.the_client.get_pipeline_for_update(pipeline_name)
pipeline.config.notification = notification
response = self.the_client.update_pipeline(pipeline_name, pipeline)
print response
更新pipeline的其他参数类似