以前の App Engine バンドル サービスの機能の大部分が Go 用 Cloud クライアント ライブラリで提供されるようになりました。詳細については、下記のおすすめの代替方法をご覧ください。
バンドルされていないソリューションへの移行ができない場合は、引き続きフォールバックとして Go 1.12+ アプリで以前のバンドル サービスを使用できます。このアプローチでは、移行サイクルの後半でバンドルされていないサービスに移行できます。
- Cloud Tasks で、
cloudtasks
パッケージを使用して Go 1.12 以降のタスクをキューに追加します。App Engine タスクのターゲットとして App Engine サービスを利用できます。 - メールの送信に、App Engine Mail API ではなく、SendGrid、Mailgun、Mailjet などのサードパーティのメール プロバイダを使用します。これらのサービスはいずれも、アプリケーションからメールを送信するための API を提供しています。
- アプリケーション データをキャッシュに保存するには、Memorystore for Redis を使用します。
google-api-go-client
ライブラリを使用して App Engine Modules API にアクセスします。環境変数と App Engine Admin API を使用して情報を取得し、アプリケーションで実行中のサービスを変更します。サービス情報 アクセスする方法 現在のサービス名 GAE_SERVICE
環境変数現在のサービス バージョン GAE_VERSION
環境変数現在のインスタンス ID GAE_INSTANCE
環境変数デフォルトのホスト名 Admin API の apps.get
メソッドサービスのリスト Admin API の apps.services.list
メソッド特定のサービスのバージョンのリスト Admin API の apps.services.versions.list
メソッド特定のサービスのデフォルト バージョン(トラフィック分割を含む) Admin API の apps.services.get
メソッド特定のバージョンで実行中インスタンスのリスト Admin API の apps.services.versions.instances.list
メソッドApp Engine Blobstore API ではなく Cloud Storage の使用をおすすめします。Cloud Storage は
storage
パッケージを介して使用します。ご利用にあたっては、Cloud Storage クライアント ライブラリのページをご覧ください。datastore
パッケージから Datastore モードの Firestore(Datastore)にアクセスします。ご利用にあたっては、Datastore クライアント ライブラリのページをご覧ください。App Engine Search API を使用する代わりに、Compute Engine に ElasticSearch などの全文検索データベースをホストして、サービスからアクセスします。
Cloud Storage の App Engine Images API で提供される類似機能を使用して、
storage
パッケージとサードパーティのサービスを介してイメージを操作します。ご利用にあたっては、Cloud Storage クライアント ライブラリのページをご覧ください。appengine.NewContext
を使用する代わりに、request.Context()
またはお好みのコンテキストを使用します。App Engine 固有の機能は、次のように Go 標準ライブラリ パッケージに置き換えられています。
App Engine パッケージ Go 標準ライブラリ パッケージ cloudsql
パッケージdatabase/sql
パッケージfile
パッケージos
パッケージlog
パッケージlog
パッケージsocket
パッケージnet
パッケージurlfetch
パッケージnet/http
パッケージ