方田T-ONE基礎となる構造は非常に強力で、すべてのモジュールは必要に応じてインストールおよびインストールできます。ユウ・ザイ, そのため、ユーザーは積み木のように希望のシステムを構築できます。まったくインストールされていない場合でも、ERP関連モジュールのみを使用しますトーン独自の基盤となるフレームワークにより、さまざまな目的に適したシステムを構築することもできます。トーンはい繁体字中国語アーキテクチャ、バックエンドはに基づいていますC#.NET開発、フロントエンドベースHTML5そしてJavaScript技術開発により、すべての機能と操作インターフェイスが携帯電話でも利用可能となり、インターフェイスの適応もサポートされます。
テストの目的
1) 特定のハードウェア環境、ネットワーク環境条件、および XD 社の複数の同時ユーザーの下でテストします。トーンシステムの応答速度。
2) 試験結果に基づいて判断するトーンXD社の性能要件を満たせるかどうか。
テストの背景
1) XD Company は全国に 5 つの工場、55 の支店、125 の代理店を持っています。約 1,200 人の従業員がさまざまな支店に分散しており、その数は 3 年以内に 1,800 人に達すると予想されます。
2)XD社から与えられるハードウェア環境およびネットワーク環境において、以下に基づきます。トーン新しいシステムが現在および将来の XD 社のパフォーマンス要件を満たすことができるかどうか。
試験範囲
このテストは XD 社の本社オフィスで行われ、主にサーバー (サーバーを含む) のパフォーマンスをテストしました。トーンサーバーおよび SQL データベース サーバー)、ネットワーク状態、クライアントの状態、およびローカル ブランチのアクセス状態はテストされません。
テスト環境
【クライアント】
Lenovo ラップトップ、i5 デュアルコア CPU、8G メモリ、SSD ハードドライブ。
【トーンサーバ】
XD 社の仮想マシン、12 コア CPU、16G メモリ
【トーンデータベースサーバー】
XD 社の仮想マシン、12 コア CPU、16G メモリ
【ネットワーク環境】
XD 社の本社 LAN は、クライアントとサーバー間のネットワーク状態が良好です。
テスト要件、内容、ツール、方法
テスト要件
このテストの要件は次のとおりです。
1) XD 社の 700 人を超えるシステム ユーザー (従業員) をテストしました。ピーク時には 200 人のユーザーが同時にシステムにログインしました。トーンシステムの応答速度は XD 社の要件を満たすことができますか?
2) このテストは XD 社の本社オフィスで実施され、主にシステム ソフトウェアとサーバーのパフォーマンスをテストし、リモート ネットワークの遅延の問題は考慮されていません。
同時実行の推定
統計ルールによると、ソフトウェア システムの同時ユーザー数 (オペレーティング システムの同時ユーザー数) の推定式は次のとおりです。
(1) 平均同時ユーザー数: C = n * L/T
(2) ピーク同時接続ユーザー数:C』 ≈ C + 3 * C の平方根
式 (1) で、C は平均同時ユーザー数、n はログイン ユーザー (オンライン ユーザー) の数、L はログイン ユーザーの平均オンライン時間、T はログイン時間の長さを示します。期間は調査中。
式(2)はピーク同時ユーザ数の計算方法を示します。C'はピーク同時ユーザ数、Cは式(1)で求めた平均同時ユーザ数です。この式は、ユーザーの行動がポアソン分布の法則に従うことを前提としています。
XD社のユーザープロフィールは以下の通りです。
1) ユーザーの総数は 800 で、測定されたオンライン ユーザーのピーク数は 200 です。
2) ほとんどのユーザー (500 人以上)はいワークショップ取材スタッフ、システムのログイン時間は 1 日平均 1 時間未満と短く、売上も高くなります。チューブ、プランそして金融担当者がログインするには長い時間がかかり、1 日あたり平均 4 時間と見積もられます。
3) すべてのユーザーの 1 日の平均ログイン時間は 2 時間と推定されます。
4) ユーザーは勤務時間内のみシステムを使用するため、検査時間は勤務時間内の 8 時間となります。
XD Company の同時ユーザー数は次のように推定されます。
平均同時ユーザー数 C = n * L/T = 200 * 2/8 = 50
同時ユーザーのピーク数 C』 = C + 3 * C の平方根 = 50 + 3 * 7 = 71
ユーザーの応答時間の基準
ソフトウェア システムのユーザー応答時間には業界の共通基準、つまり 2/5/10 原則があります。言い換えれば、ユーザーが操作を実行してシステムが 2 秒以内に応答した場合、ユーザーはそれが「非常に魅力的な」ユーザー エクスペリエンスであると考えるでしょう。システムが 5 秒以内に応答した場合、ユーザーはそれが「比較的良い」ユーザー エクスペリエンスであると考えるでしょう。 " ユーザー エクスペリエンス。システムが 5 秒以内に応答した場合、ユーザーは「比較的良い」ユーザー エクスペリエンスであると考えます。10 秒以内に応答した場合、「悪い」ユーザー エクスペリエンスとみなされます。10 秒を超えて応答が受信されなかった場合、ユーザー エクスペリエンスは「悪い」と見なされます。 、ほとんどのユーザーはリクエストが失敗したと考えるでしょう。
試験内容
このテストでは、XD Company のビジネス特性に基づいて 5 つの代表的なオペレーションをテストしました。
1) 顧客のクエリ、キーワードの入力、顧客のクエリ、およびシステムの応答時間のテスト。
2) 新しい販売契約を作成し、顧客、コース、その他の情報を入力し、[保存] をクリックして、システムの応答時間をテストします。
3) 顧客の支払い注文のリストについては、[顧客の支払い注文] メニューをクリックすると、支払い注文のリストが表示され、応答時間がテストされます。
4) 支払い注文を開き、リスト内の顧客の支払い注文をランダムにクリックし、システムの応答時間をテストします。
5) 支払い注文を確認するには、支払い注文レビュー ボタンをクリックしてシステムの応答時間をテストします。
同時ユーザー数の違いによるシステムの応答速度の変化を分析するために、このテストでは、同時実行数 1、同時実行数 50、同時実行数 100、同時実行数 150、同時実行数 200 の条件下で、上記 5 つの操作の応答時間をテストします。
このテスト システムは、XD Company から 60,000 件を超える顧客情報をインポートし、20,000 件を超える模擬顧客契約を作成しました。
テストツール
主なテスト ツールは、JMeter テスト ソフトウェアです。JMeter は、広く使用されている Web システム パフォーマンス テスト ツールです。
このテストの補助ツールには次のものがあります。グーグルブラウザ、Excel スプレッドシート。
JMeter は、複数のユーザーがサーバーにリクエストを同時に送信することをシミュレートし、各リクエストとサーバーの応答時間を記録できます。ただし、理由により、トーンシステムは Ajax 接続を広範囲に使用し、各ページは同時に複数のリクエストを発行します (ページの複雑さに応じて、最小で 2 リクエスト、最大で 20 リクエスト)。単一リクエストの応答時間は JMeter によって記録されます。ページ全体の応答時間は反映されません。
ページ全体の応答時間を取得するために、テスト中に JMeter を使用して同時ユーザー操作をシミュレートし、ブラウザからシステムにアクセスしてページ全体の応答時間を記録しました。
試験方法
このテストで使用されるメソッドの手順を以下に説明します。
1) まず、JMeter を使用して、顧客の問い合わせ、新しい販売契約、顧客の支払い注文リスト、支払い注文の開始、支払い注文のレビューという 5 つのアクションを記録します。
2) 記録されたスクリプトを変更します。主に session_id を変数に置き換えます。
3) JMeter を使用して、複数のユーザーが上記の操作を同時に実行することをシミュレートします。
4) 同時使用グーグルブラウザを使用して、顧客クエリ、新しい販売契約の作成、顧客支払い注文リスト、支払い注文のオープン、支払い注文のレビューの 5 つのアクションを手動で操作し、システムの応答結果と時間を確認します。
5) 1 ユーザー、50 同時実行、100 同時実行、150 同時実行、200 同時実行でシステムの応答時間を順番にテストします。
JMeter は、サーバーにリクエストを行うユーザーをシミュレートし、サーバーの応答データ、応答時間、その他のパラメーターを傍受します。 JMeter はマルチスレッドを有効にして、複数の同時ユーザー オペレーティング システムの状況をシミュレートできます。 JMeter テストのスクリーンショットは次のとおりです。
ネットワーク状態が良好な場合、接続確立時間やサーバー応答結果の送信時間はほとんどかかりません。下の図は、ネットワーク状況が悪い場合に販売契約を開始したときに記録されたページの応答時間を示しています。このスクリーンショットは次のことを示しています。
1) 販売契約ページが開かれると、システムは 10 回の Ajax 呼び出しを開始します。
2) 各 Ajax 呼び出しには、接続確立時間 (灰色)、サーバー応答時間 (紫色)、結果送信時間 (緑色) が含まれます。
3) 2 つの Ajax 呼び出し間の間隔は、ローカル Java スクリプトの実行時間です。
4) 同じページ上の Ajax 呼び出しは同時に (同時に) 呼び出すことができます。
5) すべての Ajax 呼び出し時間とローカル Java スクリプト実行時間を含めると、ページ全体の応答時間は 1.49 秒です。
テスト結果と分析
システムパフォーマンステストの結果
同時実行数が 1、50、100、150、200 の場合、顧客クエリ、新規販売契約、顧客支払注文リスト、支払注文開始、支払注文レビューの 5 つの操作に対するシステム応答時間は次のとおりです。
システム負荷
同時接続ユーザー数が 1 から 300 まで徐々に増加すると、トーンサーバーの CPU 使用率は徐々に増加します。次の図は、テスト ツール JMeter が 16:40 にテストを開始し、3 秒ごとに 1 人の同時テスト ユーザーを追加し、16:55 までに同時ユーザー数が 300 に達し、サーバーの CPU 使用率に達したことを記録しています。
図からわかるように、同時ユーザー数が 300 人の場合、CPU 使用率は約 36% になります。
テスト結果の分析
1) テスト結果から判断すると、同時ユーザー 1 名と同時ユーザー 50 名の間でシステムの応答速度はほとんど変化せず、5 つの操作の応答時間は約 2 秒です。
2) 同時ユーザーが 100 人いる場合、システムの応答速度はわずかに低下し、応答速度は 2 秒から 2.5 秒の間になります。
3) 同時実行数 100 から 200 まで、システムの応答速度はわずかに変動しますが、常に 2 秒から 3 秒の間です。
4) XD 社の現在のユーザー数は 800、接続ユーザー数は 200、平均同時ユーザー数は 50、最大同時ユーザー数は 71 であるため、一般的なシステム操作の応答時間は短くなります。 2.5秒以上。
5) 将来の展開を考慮して、従業員総数が 2 倍になり、ユーザー数が 1,600 人、接続ユーザー数が 400 人、平均同時ユーザー数が 100 人、ピーク時の同時ユーザー数が 142 人になった場合の応答一般的なシステム操作時間は 3 秒以内です。
6) XD 会社の支店がシステムにアクセスする場合、リモート ネットワークの遅延問題を考慮すると、通常の状況では、システムの応答時間は 4 秒以内です (ネットワーク遅延の 1 秒を追加することを考慮してください)。ユーザーの応答時間基準によれば、この応答時間は「比較的良好な」ユーザー エクスペリエンス (5 秒以内) です。