問題
AWSFargateでNewRelicPHPエージェントを使用すると、パフォーマンスが低下します。
説明
PHPエージェントは、タイミングアクティビティをシステムのクロックソースに大きく依存しています。一定のクロックチェックのため、効果的にするには、PHPエージェントはvDSOベースのクロックソースを必要とします。これにより、時間をチェックするための繰り返しの呼び出しが全体的なパフォーマンスを支配しないようになります。クロックソースを確認/変更する方法の詳細については、こちらをご覧ください。
残念ながら、AWS Fargate では vDSO をサポートしていない xen クロックソースが必須です。他のクロックソースが利用可能であるにもかかわらず、AWS Fargate では、 sys
ディレクトリを読み取り専用にしてクロックソースを変更することを禁止しています。これは、この制限に関する Fargate の未解決の問題です。
Fargateが絶対的な要件である場合は、自動計測をオフにして、いくつかの重要なトランザクションのみを手動で計測できます。これ以外に、クロックソースはPHPメトリックを収集するための時間チェックにとって非常に重要であるため、現在、このAWSの問題に対する回避策はありません。一部のお客様は、EC2やGravitonなどのクロックソースを変更できるAWSサービスでエージェントを使用して成功を収めています。