Anypoint Runtime Fabric でのリソース割り当てとパフォーマンス

Mule アプリケーションを Anypoint Runtime Fabric にデプロイする前に、適切な割り当てリソース数を決定します。リソース割り当ての決定は、Anypoint Runtime Fabric で内部ロードバランサを設定するときにも重要です。

Mule アプリケーションが Runtime Fabric にデプロイされるときに、そのアプリケーションは独自の Mule Runtime Engine (Mule) と共にデプロイされます。レプリカの数、またはそのアプリケーションとランタイムのインスタンスも指定されます。各レプリカに使用できるリソースは、アプリケーションのデプロイ時に設定した値によって決まります。

アプリケーションのデプロイ時に次のリソースを割り当てることができます。

  • vCPU コア

  • Memory (メモリ)

最小コアおよびメモリ要件

Mule アプリケーションの各レプリカに割り当てられる CPU とメモリの量の最小値は、次のとおりです。

  • vCPU コア: 0.07 コア

  • メモリ: 0.7 GiB メモリ (Mule 4) または 0.5 GiB (Mule 3.x)

CloudHub および Runtime Fabric のメモリ割り当ての計算

Anypoint Platform は、デプロイされたアプリケーションにネイティブメモリとヒープメモリを割り当てます。ヒープメモリは、Mule Runtime とアプリケーションで使用可能な合計メモリの一部です。ヒープメモリはペイロードの処理などのタスクに使用されます。

CloudHub と Anypoint Runtime Fabric とも、両方の種別のメモリを割り当てます。ただし、各メモリ種別のメモリ割り当てが計算される方法は異なります。

  • Runtime Fabric は、アプリケーションで使用可能な合計メモリを表示する。
    使用可能なヒープメモリは、アプリケーションに割り当てられる合計メモリの約半分です。

  • CloudHub は、アプリケーションで使用可能なヒープメモリの観点から最小メモリ要件を表す。

アプリケーションの起動時間

Mule アプリケーションの起動時間は、そのアプリケーションがアクセスできる vCPU コアの数と相関しています。

vCPU コア おおよその起動時間

1.00

1 分未満

0.50

2 分未満

0.10

6 ~ 8 分

0.07

10 ~ 14 分

アプリケーションのパフォーマンス

Mule アプリケーションに割り当てられたリソースによって、アプリケーションのパフォーマンスが決まります。10-KB ペイロードで簡単な処理を実行する 1 つの Mule アプリケーションに割り当てられた vCPU コアの数に基づく、スループットのおおよその値を次に示します。

vCPU コア 同時接続 平均応答時間 (ミリ秒)

1.00

10

15

0.50

5

15

0.10

1

25

0.07

1

78

Mule アプリケーションでパフォーマンステストと負荷テストを実行し、割り当てるリソースの数を決定します。

内部ロードバランサ

インバウンドトラフィックは、Anypoint Runtime Fabric によって管理される内部ロードバランサを使用して処理されます。このロードバランサは TLS の終了を担当するため、必要なリソースの数は受信接続の数と各要求の平均ペイロードサイズに基づいて調整されます。

パフォーマンステストの結果は、AWS EC2 M4 インスタンスを使用するコントローラノードが含まれる Anypoint Runtime Fabric クラスタに基づきます。パフォーマンステストで使用された負荷ジェネレータは、同じリージョンの別の AWS インスタンスでホストされました。M4 インスタンスは EC2 専用に最適化されたカスタム Intel Xeon E5-2676 v3 Haswell プロセッサを搭載しており、2.4 GHz のベースクロックレートで実行されました。Intel Turbo Boost を使用すると、クロックレートが 3.0 GHz まで上昇しました。

SSL 接続の効率がより高い C ++ ベースの負荷ジェネレータを使用して、最大のスループットを実現しました。

次の表は、CPU コアの数に基づいて、内部ロードバランサの 1 つのレプリカで処理できるおおよその要求数 (平均 10 KB) を示しています。

vCPU コア 1 秒あたりの最大要求数 (接続を再利用) 1 秒あたりの最大要求数 (接続の再利用なし)

1.00

2000

175

0.75

1500

100

0.50

1000

50

0.25

100

10

内部ロードバランサは、Runtime Fabric のコントローラ VM で実行されます。インバウンドトラフィックの量と種別に基づいて、VM のサイズを設定します。内部ロードバランサに割り当てることができるのは、各 VM で使用可能な CPU コアの半分のみです。

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub