ApsaraVideo Media Processing(MPS)キューは、ジョブを処理するためのキューです。非同期ジョブを送信すると、ジョブの優先順位とジョブが送信された順序に基づいて、ジョブは実行待ちのキューに入れられます。このトピックでは、MPS SDK for Java V2.0 を使用して、MPS キューを作成、更新、削除、およびクエリする方法の例を示します。
前提条件
SDK クライアントが初期化されていること。詳細については、クライアントの初期化 をご参照ください。
MPS キューの作成
AddPipeline オペレーションを呼び出して、MPS キューを作成できます。
MPS キューの種類の詳細については、MPS キューの作成 をご参照ください。
「リソース「Pipeline」のクォータが使い果たされました」というエラーメッセージが返された場合は、MPS キューのクォータが使い果たされています。チケットを起票を送信して、より高いクォータを申請できます。
通知に関連するパラメータの設定方法の詳細については、パラメータの詳細 トピックの「NotifyConfig」セクションをご参照ください。
メッセージキューまたはトピックを設定して通知を受信できます。詳細については、ジョブまたはワークフローの通知機能を有効にする をご参照ください。
package com.aliyun.sample;
import com.aliyun.tea.*;
public class Sample {
/**
* <b>説明</b> :
* <p>AccessKey ID と AccessKey シークレットを使用してクライアントを初期化します。</p>
* @return Client
*
* @throws Exception
*/
public static com.aliyun.mts20140618.Client createClient() throws Exception {
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
// 必須。 ALIBABA_CLOUD_ACCESS_KEY_ID 環境変数が設定されていることを確認してください。
.setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
// 必須。 ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。
.setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
config.endpoint = "mts.cn-qingdao.aliyuncs.com";
return new com.aliyun.mts20140618.Client(config);
}
public static void main(String[] args_) throws Exception {
java.util.List<String> args = java.util.Arrays.asList(args_);
com.aliyun.mts20140618.Client client = Sample.createClient();
com.aliyun.mts20140618.models.AddPipelineRequest addPipelineRequest = new com.aliyun.mts20140618.models.AddPipelineRequest()
// MPS キューの名前。
.setName("test-pipeline")
// MPS キューの種類。
.setSpeed("Standard")
// MPS キューの速度レベル。
.setSpeedLevel(1L)
// Simple Message Queue(SMQ、旧称 MNS)の通知設定。
.setNotifyConfig("{\"Topic\":\"mts-topic-1\"}")
// 現在の Resource Access Management(RAM)ユーザーに割り当てられているロール。
.setRole("AliyunMTSDefaultRole");
com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
try {
// 必要に応じて、API オペレーションのレスポンスを表示するための独自のコードを記述します。
client.addPipelineWithOptions(addPipelineRequest, runtime);
} catch (TeaException error) {
// 実際のビジネスシナリオでは、例外を慎重に処理し、プロジェクトで例外を無視しないでください。この例では、エラーメッセージは参照用にのみ表示されます。
// エラーメッセージ。
System.out.println(error.getMessage());
// 対応するエラー診断ページの URL。
System.out.println(error.getData().get("Recommend"));
com.aliyun.teautil.Common.assertAsString(error.message);
} catch (Exception _error) {
TeaException error = new TeaException(_error.getMessage(), _error);
// 実際のビジネスシナリオでは、例外を慎重に処理し、プロジェクトで例外を無視しないでください。この例では、エラーメッセージは参照用にのみ表示されます。
// エラーメッセージ。
System.out.println(error.getMessage());
// 対応するエラー診断ページの URL。
System.out.println(error.getData().get("Recommend"));
com.aliyun.teautil.Common.assertAsString(error.message);
}
}
}MPS キューの構成の更新
UpdatePipeline オペレーションを呼び出して、MPS キューの構成を更新できます。
package com.aliyun.sample;
import com.aliyun.tea.*;
public class Sample {
/**
* <b>説明</b> :
* <p>AccessKey ID と AccessKey シークレットを使用してクライアントを初期化します。</p>
* @return Client
*
* @throws Exception
*/
public static com.aliyun.mts20140618.Client createClient() throws Exception {
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
// 必須。 ALIBABA_CLOUD_ACCESS_KEY_ID 環境変数が設定されていることを確認してください。
.setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
// 必須。 ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。
.setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
config.endpoint = "mts.cn-qingdao.aliyuncs.com";
return new com.aliyun.mts20140618.Client(config);
}
public static void main(String[] args_) throws Exception {
java.util.List<String> args = java.util.Arrays.asList(args_);
com.aliyun.mts20140618.Client client = Sample.createClient();
com.aliyun.mts20140618.models.UpdatePipelineRequest updatePipelineRequest = new com.aliyun.mts20140618.models.UpdatePipelineRequest()
// 更新する MPS キューの ID。
.setPipelineId("d1ce4d3efcb549419193f50f1fcd****")
// MPS キューの新しい名前。
.setName("example-pipeline-****")
// MPS キューの新しい状態。
.setState("Paused")
// SMQ 通知設定。
.setNotifyConfig("{\"Topic\":\"example-topic-****\"}")
// 現在の RAM ユーザーに割り当てられているロール。
.setRole("AliyunMTSDefaultRole");
com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
try {
// 必要に応じて、API オペレーションのレスポンスを表示するための独自のコードを記述します。
client.updatePipelineWithOptions(updatePipelineRequest, runtime);
} catch (TeaException error) {
// 実際のビジネスシナリオでは、例外を慎重に処理し、プロジェクトで例外を無視しないでください。この例では、エラーメッセージは参照用にのみ表示されます。
// エラーメッセージ。
System.out.println(error.getMessage());
// 対応するエラー診断ページの URL。
System.out.println(error.getData().get("Recommend"));
com.aliyun.teautil.Common.assertAsString(error.message);
} catch (Exception _error) {
TeaException error = new TeaException(_error.getMessage(), _error);
// 実際のビジネスシナリオでは、例外を慎重に処理し、プロジェクトで例外を無視しないでください。この例では、エラーメッセージは参照用にのみ表示されます。
// エラーメッセージ。
System.out.println(error.getMessage());
// 対応するエラー診断ページの URL。
System.out.println(error.getData().get("Recommend"));
com.aliyun.teautil.Common.assertAsString(error.message);
}
}
}MPS キューの削除
DeletePipeline オペレーションを呼び出して、MPS キューを削除できます。
package com.aliyun.sample;
import com.aliyun.tea.*;
public class Sample {
/**
* <b>説明</b> :
* <p>AccessKey ID と AccessKey シークレットを使用してクライアントを初期化します。</p>
* @return Client
*
* @throws Exception
*/
public static com.aliyun.mts20140618.Client createClient() throws Exception {
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
// 必須。 ALIBABA_CLOUD_ACCESS_KEY_ID 環境変数が設定されていることを確認してください。
.setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
// 必須。 ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。
.setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
config.endpoint = "mts.cn-qingdao.aliyuncs.com";
return new com.aliyun.mts20140618.Client(config);
}
public static void main(String[] args_) throws Exception {
java.util.List<String> args = java.util.Arrays.asList(args_);
com.aliyun.mts20140618.Client client = Sample.createClient();
com.aliyun.mts20140618.models.DeletePipelineRequest deletePipelineRequest = new com.aliyun.mts20140618.models.DeletePipelineRequest()
// 削除する MPS キューの ID。
.setPipelineId("d1ce4d3efcb549419193f50f1fcd****");
com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
try {
// 必要に応じて、API オペレーションのレスポンスを表示するための独自のコードを記述します。
client.deletePipelineWithOptions(deletePipelineRequest, runtime);
} catch (TeaException error) {
// 実際のビジネスシナリオでは、例外を慎重に処理し、プロジェクトで例外を無視しないでください。この例では、エラーメッセージは参照用にのみ表示されます。
// エラーメッセージ。
System.out.println(error.getMessage());
// 対応するエラー診断ページの URL。
System.out.println(error.getData().get("Recommend"));
com.aliyun.teautil.Common.assertAsString(error.message);
} catch (Exception _error) {
TeaException error = new TeaException(_error.getMessage(), _error);
// 実際のビジネスシナリオでは、例外を慎重に処理し、プロジェクトで例外を無視しないでください。この例では、エラーメッセージは参照用にのみ表示されます。
// エラーメッセージ。
System.out.println(error.getMessage());
// 対応するエラー診断ページの URL。
System.out.println(error.getData().get("Recommend"));
com.aliyun.teautil.Common.assertAsString(error.message);
}
}
}キュー ID に基づいて MPS キューをクエリする
QueryPipelineList オペレーションを呼び出して、キュー ID に基づいて MPS キューをクエリできます。
package com.aliyun.sample;
import com.aliyun.tea.*;
public class Sample {
/**
* <b>説明</b> :
* <p>AccessKey ID と AccessKey シークレットを使用してクライアントを初期化します。</p>
* @return Client
*
* @throws Exception
*/
public static com.aliyun.mts20140618.Client createClient() throws Exception {
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
// 必須。 ALIBABA_CLOUD_ACCESS_KEY_ID 環境変数が設定されていることを確認してください。
.setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
// 必須。 ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。
.setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
config.endpoint = "mts.cn-qingdao.aliyuncs.com";
return new com.aliyun.mts20140618.Client(config);
}
public static void main(String[] args_) throws Exception {
java.util.List<String> args = java.util.Arrays.asList(args_);
com.aliyun.mts20140618.Client client = Sample.createClient();
com.aliyun.mts20140618.models.QueryPipelineListRequest queryPipelineListRequest = new com.aliyun.mts20140618.models.QueryPipelineListRequest()
// クエリする MPS キューの ID。
.setPipelineIds("d1ce4d3efcb549419193f50f1fcd****,72dfa5e679ab4be9a3ed9974c736****");
com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
try {
// 必要に応じて、API オペレーションのレスポンスを表示するための独自のコードを記述します。
client.queryPipelineListWithOptions(queryPipelineListRequest, runtime);
} catch (TeaException error) {
// 実際のビジネスシナリオでは、例外を慎重に処理し、プロジェクトで例外を無視しないでください。この例では、エラーメッセージは参照用にのみ表示されます。
// エラーメッセージ。
System.out.println(error.getMessage());
// 対応するエラー診断ページの URL。
System.out.println(error.getData().get("Recommend"));
com.aliyun.teautil.Common.assertAsString(error.message);
} catch (Exception _error) {
TeaException error = new TeaException(_error.getMessage(), _error);
// 実際のビジネスシナリオでは、例外を慎重に処理し、プロジェクトで例外を無視しないでください。この例では、エラーメッセージは参照用にのみ表示されます。
// エラーメッセージ。
System.out.println(error.getMessage());
// 対応するエラー診断ページの URL。
System.out.println(error.getData().get("Recommend"));
com.aliyun.teautil.Common.assertAsString(error.message);
}
}
}キューの状態に基づいて MPS キューをクエリする
SearchPipeline オペレーションを呼び出して、キューの状態に基づいて MPS キューをクエリできます。
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sample;
import com.aliyun.tea.*;
public class Sample {
/**
* <b>説明</b> :
* <p>AccessKey ID と AccessKey シークレットを使用してクライアントを初期化します。</p>
* @return Client
*
* @throws Exception
*/
public static com.aliyun.mts20140618.Client createClient() throws Exception {
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
// 必須。 ALIBABA_CLOUD_ACCESS_KEY_ID 環境変数が設定されていることを確認してください。
.setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
// 必須。 ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。
.setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
config.endpoint = "mts.cn-qingdao.aliyuncs.com";
return new com.aliyun.mts20140618.Client(config);
}
public static void main(String[] args_) throws Exception {
java.util.List<String> args = java.util.Arrays.asList(args_);
com.aliyun.mts20140618.Client client = Sample.createClient();
com.aliyun.mts20140618.models.SearchPipelineRequest searchPipelineRequest = new com.aliyun.mts20140618.models.SearchPipelineRequest()
// クエリする MPS キューの状態。
.setState("Paused")
// 各ページに返すエントリの数。
.setPageSize(10L)
// 現在のページ番号。
.setPageNumber(1L);
com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
try {
// 必要に応じて、API オペレーションのレスポンスを表示するための独自のコードを記述します。
client.searchPipelineWithOptions(searchPipelineRequest, runtime);
} catch (TeaException error) {
// 実際のビジネスシナリオでは、例外を慎重に処理し、プロジェクトで例外を無視しないでください。この例では、エラーメッセージは参照用にのみ表示されます。
// エラーメッセージ。
System.out.println(error.getMessage());
// 対応するエラー診断ページの URL。
System.out.println(error.getData().get("Recommend"));
com.aliyun.teautil.Common.assertAsString(error.message);
} catch (Exception _error) {
TeaException error = new TeaException(_error.getMessage(), _error);
// 実際のビジネスシナリオでは、例外を慎重に処理し、プロジェクトで例外を無視しないでください。この例では、エラーメッセージは参照用にのみ表示されます。
// エラーメッセージ。
System.out.println(error.getMessage());
// 対応するエラー診断ページの URL。
System.out.println(error.getData().get("Recommend"));
com.aliyun.teautil.Common.assertAsString(error.message);
}
}
}