Skip to content

Latest commit

 

History

History
62 lines (43 loc) · 4.65 KB

File metadata and controls

62 lines (43 loc) · 4.65 KB

FAQ

Q. 何もしていないのに、スコアが下がる

  • スコアは負荷試験による実測値をベースにする性質上、同一条件でも採点結果が多少上下します。
  • ある改善前後でスコアが下がっても、効果が全くなかったと断定できない場合があるので注意してください。

Q. ローカル環境でのスコアと、VM 上でのスコアが乖離している

  • 競技環境構成 のように、VM ではアプリケーションサーバと負荷試験サーバを分けて負荷試験を行っていること・マシンのスペックなどの条件から、スコアの乖離が発生することが予想されます。
  • スコアの前後比較は、ローカル環境上で行ったもの同士・VM 環境上で行ったもの同士で行うようにしましょう。

Q. データの整合性はどこまで気をつければいいですか。アプリが実行中にクラッシュしたシナリオの対応など

  • まずは最低限 API テストが通るレベルにしてください。
  • 例えば負荷試験中の更新内容を全てメモリのみに保管し永続化しない場合、電源断で負荷試験中のデータは全て消失するため、これは業務アプリ向けの改善とは言い難いです。

Q. 画像の圧縮や変換はどこまで認められますか?

  • 画像については、UI 上で機能する場合に限り、変換や圧縮が認められます。

Q. データベースのテーブルの構造を変更しても良いですか?

  • インデックスの作成やカラムの追加は問題ありません。禁止事項についてはレギュレーションを参照ください。

Q. ライブラリやツールを VM にインストールしても構いませんか?

  • OK です。

Q. 追加で VM のファイアウォールのポートを開放できますか?

  • できません。HTTPS, SSH のみの開放です。

Q. nginx や mysql を別のものに変更したり、backend を別の言語で実装しても良いですか?

  • OK です。

Q. 評価スクリプトの実行を繰り返すと、スコアがどんどん下がっていく

  • 初期の実装では、DockerEngine に負荷がかかっている可能性があります。DockerEngine の再起動が有効な可能性があります。

Q. どこまでが改善対象ですか?

  • 採点時の負荷試験は HTTPS 接続で各 API へリクエストを送ります。nginx や mysql、backend コンテナといった API の機能を成立させるためのモジュールは改善対象です。
  • 要件を満たしていれば、これらのモジュールを全く差し替えてしまうことも可能です。
  • frontend コンテナ及びそれを実行するクライアントについては負荷試験のリクエスト対象に入っていないため改善しても効果はあまり見込めません。

Q. リストアされたデータの中身を見ること / 分析することは可能ですか?

  • 可能です。お客様からは許可は取っているものとします。

Q. API テスト時にたくさん失敗する

  • API テストではそれぞれのテストの結果を利用して後続のテストを行なっている箇所があります。
  • 前提となる項目が PASS しない場合、後続のテスト項目も (仕様に適合しているかにかかわらず)失敗する場合があります。
  • 大幅に実装を変更してまとめて API テストを実施すると問題点がわかりにくくなるため、こまめに API テストを実施することをお勧めします。

Q. データを変更していないのに、API テストに失敗する

  • まれに、実装に問題がない場合でも API テストに失敗する場合があります。
  • 再度 API テストを実行して成功する場合には、特に気にすることなく進めて問題ありません。

Q. 用意されたスクリプトは使わなくてもいいですか?

  • 公式な採点結果は運営側で用意された評価スクリプトの実行結果のみが認められますが、それ以外のスクリプトは好みに合わせて使い分けてください。

Q. 意図せずレギュレーション違反をしてしまった

  • 考慮する場合があります。

このレギュレーションを基に、アプリケーションのパフォーマンス改善に取り組んでください。何か疑問があれば、FAQを参照するか、運営に問い合わせてください。


トップ