USER VOICE

AWSマネージド

+

最適化

負荷試験でのアプリケーションの性能測定に基づいたシステム構成の見直し提案

課題はスパイク負荷対策の強化

Webアンケートシステムの開発会社様から、同時アクセスが多発する使い方をされるアンケートシステムが、同時アクセスの負荷に耐えられないので困っているという相談がありました。このWebアンケートシステムは高機能でありながら、料金が安いというコストパフォーマンスの良さと、導入から運用までのトータルサポートでユーザーからとても高い評価を得ています。

しかし、このWebアンケートシステムで複雑なアンケートが稼働している場合は、同時多発的なアクセスが発生した際に、システムの動作が遅くなる、あるいはダウンしてしまうという事態が発生していました。

また、アンケートというシステムの特性上、システムへの書き込みアクセスが問題となるため、単に台数でカバーすることができないものでした。

そこで、同時アクセスの目標を設定し、テストツールを利用した負荷試験を実施して、サーバスペックに応じた性能の把握と、ボトルネックの検出をし、ピーク時に耐えられる性能を把握します。

それを基に、求められる性能に対応できるために必要なシステム構成を割り出すことにしました。

性能最大化とコスト最適化を同時に実現

テスト―ツールは、豊富な実績があるオープンソースソフトウェア(OSS)のApache JMeterを利用しました。Apache JMeterは、Apache Software Foundationが開発したWebアプリケーションの機能動作およびパフォーマンス計測するためのテストツールです。テストしたい画面のURLやリクエストパラメータやリクエスト数、スレッド数などを定義することで任意の負荷試験を行うことができます。さらには、応答データに応じたリクエストの生成を行う事で、セッションに必要なデータを動的に生成することができます。

負荷試験の対象となるデータベースはAmazon Aurora Serverless v2を採用しました。負荷に応じたスペックの動的割り当てや、目標性能へのスムーズなスケールアップを検証と評価することにより、課題であるスパイク負荷に対処できる能力がある事、またその構成を把握することができました。

データベース以外にも、ALBによる負荷分散や、Webアンケートシステムのスケールアウトや冗長化、S3への長期保存データのログ退避等、AWSマネージドサービスを積極的に利用することにより、性能最大化だけでなくコスト最適化を同時に実現することができました。

サービス全体の課題解決に向けた取り組み

今回のご相談は、サーバーの知識と経験だけでなく、Webアプリケーションの要件や仕様を深く理解したうえで取り組む必要がある難易度の高いご相談でした。弊社にはインフラ、開発、デザインの専門メンバーがいるため、それぞれの分野を超えたサービス全体の課題解決に向けた取り組みことができました。

その結果、課題のスパイク負荷への対処だけでなく、性能最大化とコスト最適化を同時に実現することにより、Webアンケートシステムの開発会社の担当者の高い満足と評価を得ることができました。