Go によるタスクキューの例
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
この例では、HTML フォームを表示するアプリを作成します。ダイアログ ボックスに文字列を入力して [Add
] をクリックします。アプリは、このようにして文字列が入力された回数をカウントします。
アプリは次のことを行います。
- [
Add
] をクリックすると、フォームは HTTP POST
リクエストを使用して、App Engine で実行されているアプリに文字列を送信します。アプリは受け取った文字列をタスクにバンドルしてデフォルトのキューに送信します。
- キューは、
/worker
という URL にマッピングされた組み込み済みのタスクハンドラにタスクを転送し、ハンドラは非同期でデータストアに文字列を書き込みます。
- HTTP
GET
リクエストを送信すると、入力した文字列のリストと、各文字列に Add
を実行した回数(文字列を入力するか、プルダウン ボックスで文字列をクリックした回数)が表示されます。
このアプリを App Engine にデプロイするには、次の手順を実行します。
次のものを queue.yaml
というファイルにコピーします。これにより、タスクの処理頻度がデフォルトの 1 秒あたり 5 件から 1 秒あたり 3 件に変更されます。
queue:
- name: default
rate: 3/s
同じディレクトリで、次のコードを任意の名前のファイルにコピーします(ファイルの拡張子は .go
にします)。これは、タスクハンドラを含むアプリケーションコードです。
同じディレクトリで、app.yaml
という名前のファイルに次の内容をコピーします。これにより、アプリケーションが App Engine 用に構成されます。
App Engine アプリが準備された Google Cloud Platform プロジェクトがあり、そのプロジェクト用に gcloud
コマンドを初期化し、構成していることを確認します。
gcloud app deploy
コマンドを使用して App Engine にアプリをデプロイします。
gcloud app browse
コマンドを使用して、アプリの動作を確認します。
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-04-07 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["わかりにくい","hardToUnderstand","thumb-down"],["情報またはサンプルコードが不正確","incorrectInformationOrSampleCode","thumb-down"],["必要な情報 / サンプルがない","missingTheInformationSamplesINeed","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-04-07 UTC。"],[[["This application counts and displays the number of times a string is entered via an HTML form."],["When a string is added, it's sent to App Engine via an HTTP POST request, bundled into a task, and added to the default queue."],["The task queue forwards the task to a worker handler, which then writes the string to a datastore asynchronously."],["An HTTP GET request retrieves and displays a list of the entered strings and their corresponding counts."],["The application can be deployed to App Engine using specific configuration files and the `gcloud` command-line tool."]]],[]]