すべてのプロダクト
Search
ドキュメントセンター

Edge Security Acceleration:エッジコンピューティングの実現

最終更新日:Aug 09, 2024

Dynamic Content Delivery Network (DCDN) は、EdgeRoutine (ER) やEdgeKVなどのサービスを通じて、エッジでアプリケーションの機能を拡張することもできます。 サービスまたは軽量アプリケーションは、ユーザーに近いプレゼンスポイント (POP) に直接展開できます。 これにより、応答レイテンシが低減される。 これらのサービスまたはアプリケーションはサーバーレスインスタンスとして実行されます。これは、Alibaba Cloud がお客様に代わってリソースを管理し、スケジュールすることを意味します。

説明

EdgeRoutineはベータリリースであり、選択したユーザーのみが利用できます。 DCDNサービスの1日あたりのピーク帯域幅が500 Mbit/sを超える場合、EdgeRoutineを有効にするには、チケットを起票してください。 リクエストが承認されると、DCDNコンソールの左側のナビゲーションペインにエッジ関数が表示されます。

ER

ER は、エッジでロジックを実装できる JavaScript ランタイム環境です。 ER にアップロードしたコードは、Alibaba Cloud グローバルネットワーク内の任意の POP で実行できます。 これにより、顧客またはユーザーに最も近い POP からサービスを提供でき、応答時間とユーザーエクスペリエンスが大幅に向上します。

EdgeRoutineの有効化

  1. DCDNコンソール

  2. 左側のナビゲーションウィンドウで、エッジ関数.

  3. [ERを有効にする] > [今すぐ有効にする] を選択してEdgeRoutineを有効にします。

最初のルーチンを作成する

ステップ 1:ルーチンの作成と設定

  1. DCDNコンソール

  2. 左側のナビゲーションウィンドウで、エッジ関数.

  3. EdgeRoutineを初めて使用するときは、サブドメインを作成します。

    1. エッジ関数ページで、サブドメインの作成 をクリックします。

      image.png

    2. サブドメインの作成 ダイアログボックスで、サブドメイン名を指定します。

      説明
      • サブドメインは、作成するすべてのルーチンが存在するリポジトリです。 サブドメインが作成されたら、サブドメインの名前を変更することはできません。

      • サブドメインは、各ユーザに対する一意の識別子であり、ルーチンIDの一部である。

      • 作成後のサブドメイン名は変更できません。 名前には、小文字、数字、およびハイフン (-) を使用できます。 名前は2文字以上でなければなりません。 例: サブドメイン名。

    3. OK をクリックします。

  4. エッジ関数ページで、関数の作成 をクリックします。 下表にパラメーターを示します。

    创建程序

    パラメーター

    説明

    関数名

    ルーチン名を入力します。

    説明

    名前には、小文字、数字、およびハイフン (-) を使用することができます。長さは必ず 2 文字以上にしてください (例:routine-name)。関数名は作成後に変更することができません。

    説明

    オプションです。 ルーチンの説明を入力します。

    仕様

    ルーチンの1回の実行の最大CPUタイムスライスを選択します。 ネットワーク応答を待つI/O時間は含まれていません。 料金は通常の仕様に基づいて異なります。 詳細については、「課金ルール」をご参照ください。

    • リクエストごとの CPU タイムスライス:5 ms、

    • リクエストごとの CPU タイムスライス:50 ms (デフォルト)

    • 個々のリクエストのリクエストごとの CPU タイムスライス:100 ms

  5. ルーチンを作成したら、操作 列の 詳細 をクリックして、さまざまな環境でルーチンを設定します。 ルーチン設定は、環境間で独立しています。 本番環境、テスト環境、およびカナリアリリース環境でルーチンの設定を変更できます。 詳細については、「カナリア環境 (オプション) 」をご参照ください。 下表に、各パラメーターを説明します。

    パラメーター

    説明

    関数の仕様

    ルーチンの1回の実行の最大CPUタイムスライス。 ネットワーク応答を待つI/O時間は含まれていません。 最大リアルタイム: 120秒。 メモリ: 128 MB。

    • リクエストごとの CPU タイムスライス:5 ms、

    • リクエストごとの CPU タイムスライス:50 ms (デフォルト)

    • 個々のリクエストのリクエストごとの CPU タイムスライス:100 ms

    ドメイン名のホワイトリスト

    • ルーチンに関連付けることができるドメイン名。

    • ワイルドカードドメイン名がサポートされています。

    • デフォルトでは、ドメイン名のホワイトリストは空です。 これは、任意のドメイン名をルーチンに関連付けることができることを示す。

    説明

    たとえば、Domain Name Whitelistパラメーターをo example.comに設定した場合、m example.comからのリクエストのみがルーチンをトリガーできます。

ステップ 2:ドメイン名とルーチンを関連付ける

ルーチンは、クライアントにサービスを提供するためにドメイン名を必要とする。 ドメイン名には、CDN高速化ドメイン名またはDCDN高速化ドメイン名を指定できます。 ルーチンを作成して設定したら、 DCDN-acceleratedドメイン名をルーチンに関連付ける必要があります。 次に、ルーチンは、ルーチンに関連するドメイン名からの要求によってトリガされる。 ドメイン名が追加されたサービスのコンソールにログインします。

  1. DCDNコンソール

  2. 左側のナビゲーションウィンドウで、ドメイン名.

  3. On theドメイン名ページで、管理するドメイン名を見つけて、設定.

  4. 左側のナビゲーションペインで、EdgeRoutine をクリックします。

  5. EdgeRoutine ページでスイッチをオンにし、EdgeRoutine ID パラメーターを設定します。 下表に、各パラメーターを説明します。

    边缘程序

    パラメーター

    説明

    EdgeRoutine ID

    ルーチンIDは、各ルーチンの一意の識別子である。 形式: routineName.subdomain.

    説明

    DCDNコンソールの左側のナビゲーションウィンドウで、エッジ関数 をクリックします。 関数 ページでルーチンのIDを確認できます。

    image.png

    トリガーモード

    DCDN高速化ドメイン名にアクセスしようとするリクエストがルーチンをトリガーするモードを選択します。 次のモードがサポートされています。

    • リダイレクト: DCDN高速化ドメイン名にアクセスしようとするリクエストは、ルーチンによって処理されます。 リクエストを処理するためのコードをルーチンに記述できます。 ルーチンは、要求されたコンテンツをクライアントに返し、cache APIを呼び出してキャッシュを読み取り、またはフェッチ要求を送信して要求をオリジンサーバーにリダイレクトできます。

    • バイパス: DCDN高速化ドメイン名にアクセスしようとするリクエストにより、ルーチンがトリガーされます。 その後、 DCDNコンソールで設定された設定が実行され、リクエストはオリジンサーバーにリダイレクトされます。 このトリガーモードは、認証やログ追跡などのシナリオに適しています。

    エラー時に配信元へリダイレクト

    • : ルーチンが例外をスローすると、POP (point of presence) は、クライアントから要求されたURLを使用して、 DCDN高速化ドメイン名のオリジンサーバーに要求を転送します。 オリジンサーバーがリクエストを処理します。 これにより、ビジネスの継続性とディザスタリカバリが保証されます。

    • ×: ルーチンが例外をスローすると、HTTPステータスコード5xxがクライアントに返されます。

      説明
      • ルーチンを初めて使用するときは、[Redirect to Origin if Error Occurs] パラメーターを [No] に設定することを推奨します。 問題のトラブルシューティングに返されるHTTP 5xxステータスコードを使用できます。

      • 例外が発生した場合、back-to-originリクエストの数に対して課金されます。 異常なback-to-originリクエストの割合は非常に低く、無視できます。

ステップ 3:ルーチンの開発とデバッグ

  1. DCDNコンソール

  2. 左側のナビゲーションウィンドウで、エッジ関数.

  3. 作成したルーチンを見つけてクリックします。詳細[アクション] 列に表示されます。

  4. 表示されたルーチンページで、コード タブをクリックして、JavaScriptを使用してルーチンを開発します。 サンプルコードでは、HelloWorld スクリプトが使用されています。代码

  5. コーディングが完了したら、Publish to Test Environment をクリックします。 ページに表示されているテスト環境のIPアドレスを、ルーチンのデバッグに使用するマシンに関連付けることができます。

    説明

    テスト環境のIPアドレスと、ルーチンに関連付けられているドメイン名を、オンプレミスマシンのhostsファイルに追加できます。 たとえば、10.10.10.10 d example.comをオンプレミスマシンのhostsファイルに追加します。 IPアドレスを前の図に記載されているIPアドレスに置き換え、ドメイン名をルーチンに関連付けられている DCDN高速化ドメイン名に置き換えます。

ステップ 4:バージョンの保存

デバッグが完了したら、コード タブの 新しいバージョンとして保存 をクリックします。测试

ステップ 5:バージョンの公開

  1. 表示されたルーチンページで、バージョン タブをクリックし、公開するバージョンを見つけて、操作 列の 公開 をクリックします。

  2. バージョンを公開するテスト環境本番環境、またはカナリアリリース環境を選択します。

    説明

    スクリプトを本番環境に公開する前に、ルーチンをカナリアリリース環境に公開することを推奨します。

  3. [OK] をクリックして、すべてのPOPの本番環境にコードをデプロイします。

EdgeKV

EdgeKV は、キーと値のペアに基づくエッジストレージサービスです。 EdgeKV は、開発者が低頻度でデータを書き込み、ER が高頻度でデータを読み取るシナリオに適しています。 EdgeKV にデータを追加すると、世界中の POP にデータが自動的に同期されます。 ER は、同じ POP に保存されているデータを読み取り、使用できます。

EdgeKV の有効化

EdgeKVを使用する前に、EdgeKVを有効にする必要があります。

にログインします。 DCDNコンソール左側のナビゲーションウィンドウで、[EdgeKV] をクリックし、[今すぐ有効化] をクリックします。

1

EdgeKV でキーと値のデータを管理する

名前空間の作成

説明

名前空間は互いに分離されています。 最大10個の名前空間を作成できます。

  1. DCDNコンソール

  2. 左側のナビゲーションウィンドウで、エッジコンピューティング > EdgeKV を選択します。 表示されるページで、名前空間の作成 をクリックし、画面の指示に従って名前空間名説明 パラメーターを設定します。

    説明

    名前空間名パラメーターは、ERの組み込みAPI操作のnamespaceパラメーターに対応します。

    创建存储空间

  3. OK をクリックします。

key-valueデータの管理

  1. DCDNコンソール

  2. 名前空間リストで、管理する名前空間を見つけて、操作 列の 管理 をクリックします。

  3. [キー値の追加] をクリックし、画面の指示に従って キー および パラメーターを設定します。8

  4. OK をクリックします。

  5. (オプション) データを追加した後、変更表示 、または 削除 をクリックしてデータを管理します。