ソフトウェアが信頼できるかどうかは、どうすればわかるのでしょうか? そうです、テストしてみなければわかりません。大学の学生と同じように、どんなソフトウェアでも、最高水準を満たしているかどうかを確認するために定期的なテストが必要です。
Bitrix24 では、負荷テストを非常に重視しています。ソフトウェア開発者および販売業者として、当社はお客様に最高のパフォーマンスと信頼性を提供するために、製品を定期的にテストしています。
毎日、世界中の何百万もの人々が Bitrix24 の正常な動作に依存しており、わずかなダウンタイムもリスクとして許容できません。これは、システム パフォーマンスに対する厳しい要件を持つ企業によく選ばれる、当社のセルフホスト バージョンに特に当てはまります。
ここでは、多数の従業員を抱え、負荷の高い大規模なビジネス環境で Bitrix24 システムのパフォーマンスを評価するために実施した最新の負荷テストの詳細な結果を示します。2022 負荷テスト
2022 年 11 月に、展開された CRM ソリューションを使用して Bitrix24 セルフホスト (エンタープライズ エディション) の負荷テストを実施し、そのパフォーマンスを評価しました。
一般情報
負荷テストでは、クラスター ソリューションに CRM システムを展開し、大量のテスト データを入力して、実際のユーザーの行動を模倣した負荷をかけました。負荷テストの目的で実行された操作には、システム認証、顧客ベースの処理、リード管理、取引処理と取引ステータスの更新、インスタント メッセージング、ドキュメントのアップロードなど、標準的な CRM シナリオが含まれていました。
大規模な企業セグメントのニーズに基づいて、このようなテストの主な目的を決定しました。
- 大企業に導入された CRM システム (従業員数万人、CRM ユーザー数 1,000 人 + 大量のデモ データ、高強度の情報フローレート) の動作をシミュレートします。
- 実際のユーザー行動にできるだけ近いテスト方法を提供する
- 利用可能な機器上での組み込みBitrix24スケーリングおよびフェイルセーフ技術の安定した動作を実証する
- 展開されたソリューションの応答時間が 1 秒を超えないようにします。
テスト条件
装置
テストを実行するために専用の仮想サーバーが選択されました。これにより、インフラストラクチャの展開とサポートのオーバーヘッドを同時に削減しながら、フルスケールのクラスター ソリューションをエミュレートできるようになりました。以前のテストと同様に、市場で入手可能な中価格帯の機器を使用しました。
テスト用に提供されたハードウェアには、次の 3 つのサーバー構成がありました。
- データベース サーバー (2 台): Intel Xeon (Skylake、IBRS): 2294 MHz (10 コア)、48 GB RAM、300 GB HDD
- アプリケーション サーバー (2 台): Intel Core (Haswell、noTSX、IBRS): 1995 MHz (6 コア)、24 GB RAM、200 GB HDD
- 負荷ジェネレーター (1 台): Intel Xeon (Skylake、IBRS): 2294 MHz (10 コア)、24 GB RAM、300 GB HDD。
クラスターソリューションとWeb環境
pfweb1, pfweb2 | 2 つのアプリケーション サーバー (Web サーバー) を備えたクラスター: CentOS 7.9、Nginx 1.20.2、Apache 2.4.6、PHP 8.0.19。 バランス調整は pfweb1 の Nginx を使用して実行されました。 |
pfdb1、pfdb2 | 2 つのデータベース サーバーを備えたクラスター: CentOS 7.9、Percona Server (MySQL) 8.0.29、マスター/スレーブ構成。 |
pfjm | Jmeter 5.3.3 InfluxDB を搭載した負荷生成サーバー、Jmeter および Grafana データの取得と保存、テスト結果の表示と視覚化 |
data processes and threads (1-7) | 1.テストトラフィック 2.負荷分散 3.クラスターキャッシュ 4.クラスターセッション 5.Lsyncノード間のファイル同期 6.データベースのレプリケーション 7.製品パフォーマンスのためのコアデータベースコネクション |
2 台のデータベース サーバーと 2 台のアプリケーション サーバーを備えたクラスターを導入しました。この特定の構成は標準的で最も普及しており、高いクラスター パフォーマンスを確保しながら高可用性も提供するために選択されました。サーバー ソフトウェアは、 Bitrix24 Virtual Appliance
for Linux 7.5.2 を 使用して構成され、Web Cluster モジュールが有効になってクラスター ソリューションが作成されました 。最初の「トライアル」テストを実施した後、サーバー構成が更新されました。
Web 環境の更新の一覧:
- 更新されたオペレーティング システム パラメータ:
- エコー 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range
- sysctl -w net.ipv4.tcp_tw_recycle=1
- sysctl -w net.ipv4.tcp_tw_reuse=1
- sync_binlog が1000 に増加しました
- innodb_buffer_pool_size が34 GB に増加しました
- max_heap_table_size を256 MB に設定
- max_heap_table_size、max_heap_table_sizeを 90 MB に設定
- myisam_sort_buffer_sizeが 64 MB に増加しました
- max_connections が305 に増加しました
イントラネットポータルテストソリューション
クラスター ソリューションには、Bitrix24 Self-hosted (エンタープライズ エディション)、バージョン 22.375 (メイン モジュール バージョン) が展開されていました。
- 標準 Bitrix24 セルフホスト (エンタープライズ エディション)、バージョン 22.375、最新の更新プログラム、およびクラスター ソリューションを作成するために有効化された Web クラスター モジュール。
- 最終テスト開始時のデモコンテンツ:
- 50万社
- 1,515,000件の連絡先
- 995,000件のリード
- 50万件の取引
- カタログ製品 144,000 件
- 9,391,000 件の CRM イベント
- 4,522,000 件の CRM タイムライン レコード
- 36,000 フィードメッセージ
- 最終テスト開始時点でのポータル データベース内の従業員数は 22,198 人 (14 の構造部門に分散) です。
負荷生成方法
テストは、次の 2 つの主要な CRM シナリオを使用して実行されました。
- 多数のマネージャー (最大 500 人以上) が、受信リードのフローを管理し、その後のリードの失注または獲得/製品/サービスの購入取引への変換として評価する「クイック リード」シナリオ。
- 「長期取引」シナリオでは、取引を処理する多数のマネージャー (最大 100 人以上) が 1 人のマネージャーに制限されます。毎日、マネージャーは処理済みの取引に新しいステータスを追加し、更新します (会議のスケジュール、ドキュメントのアップロード、コメント、通話、仕様の修正など)。主な特徴: 個々の取引に多数の製品が含まれます。
テストでは、企業が複数のビジネス ディレクションに関連する両方のシナリオを同時に使用することを想定しました。
選択された負荷シナリオはリソースをかなり消費するため、複雑なプロジェクトのフレームワーク内で Bitrix24 ポータルと CRM 機能の両方のパフォーマンスをチェックできます。
テスト シナリオの詳細は以下の通りです。
シナリオ(負荷%) | アクション | 負荷(%) |
クイックリード(80%) | 承認 | 100 |
リードリスト | 100 | |
繰り返しリードリスト | 100 | |
鉛 | 100 | |
商品のアップロード | 100 | |
商品アップロード2 | 100 | |
リードを失った | 18 | |
リードを獲得 | 2 | |
カンバン、リード、プッシュの更新 | 100 | |
リードリスト | 100 | |
認可(20%) | 承認 | 100 |
リードリスト | 100 | |
取引リスト | 100 | |
取引開始 | 100 | |
支払い書類のアップロード | 100 | |
通話の追加 | 5 | |
企業(1%) | 承認 | 100 |
リードリスト | 100 | |
企業リスト | 100 |
負荷は、 JMeterツール バージョン 5.5 を使用して作成されました。テスト データは、高クエリおよびレコード負荷を処理するように設計された高性能データベースであるInfluxDBを介して記録されました。アナリストは視覚化にGrafana を使用しました。サーバーはTelegrafアプリケーションを使用して監視されました。
負荷生成方法
Bitrix24 CRM (エンタープライズ エディション) は、大企業向けの CRM ベースのソリューションをエミュレートするテスト シナリオ内で実行され、24 時間テストで 4 台の物理サーバーのクラスターに展開され、3,000 人の従業員に対して安定した同時 CRM 操作が保証されました。
監視システムでは、24 時間あたり 423,874 のシステム クエリが実行され、リクエストの 95% で平均応答時間が 0.713 秒でした。
テストの概要: フローの数、1 秒あたりのクエリ数のダイナミクス、クエリとエラーの合計数:
応答時間。テスト内の特定のページとそのトラフィックの 95 パーセンタイル:
データベースおよびアプリケーション サーバーでの CPU 使用率:
結論
Bitrix24 セルフホスト (エンタープライズ エディション) の負荷テストの結果、プラットフォームの高性能と高負荷条件での安定性が確認されました。4 台のサーバーのクラスター ソリューションに展開されたデモ CRM ソリューションは、3000 人のユーザーの同時操作を保証しました。これは、大企業の負荷プロファイルに相当します。
同時に、システムはほとんどのリクエストに対して1 秒を超えない高速(インターネット プロジェクトの標準でも)な応答を提供し、スムーズなユーザー エクスペリエンスを保証します。Web クラスター テクノロジーは、そのパフォーマンスと信頼性を再び証明しました。 テスト方法、シナリオ、負荷プロファイル、および物理ユーザー プロファイルの使用により、可能な限り実際の状況に近いテスト条件を取得できました。つまり、このテストの結果を新しいプロジェクト設計の参照として使用できます。 弊社では、法人顧客やインテグレーターのご要望に応じて、カスタム開発されたポータルやそのプロトタイプの本格的なテスト、仮説のテスト、ピーク負荷時のソリューションの安全係数の計算の基盤となるテスト方法、ポータル構成、テスト環境を提供する準備ができています。テスト環境は、たとえば、企業の企業システムとの統合を追加してより正確な結果を保証するなど、さらにカスタマイズできます。 追加のテストの詳細については、弊社までお問い合わせください。
2021 負荷テスト
2021年1月に、Bitrix24のセルフホスト版(エンタープライズエディション)の負荷テストを実施し、その基盤上に構築された大企業のイントラネットポータルのパフォーマンスを評価しました。
一般情報
負荷テスト中、クラスター化されたソリューションに展開され、大量のテスト データが格納されたイントラネット ポータルに、実際のユーザーの動作を模倣した負荷がかけられました。
仮想ユーザーは、典型的な作業シナリオに似た一連の操作を実行しました。
- ログイン/ログアウト
- ニュースを読む
- ワークグループを開く
- フィードを閲覧する
- 個人チャットとグループチャットの作成
- インスタントメッセージの交換
- タスクの設定
- ドキュメントのダウンロード
- ビジネスプロセスの開始
各ユーザーは典型的なシナリオの 1 つを完了し、ポータルでの作業を終了しました。
テストの目的
- 大企業のイントラネットポータルの運用をシミュレートする(従業員 10 万人 + 大量のデモデータ)
- 実際のユーザー行動にできるだけ近いテスト方法を提供する
- 利用可能な機器でエラーなくポータルが安定して動作することを証明する(全従業員の 1/3(少なくとも 30,000 人)が同時にポータルを使用している状況)
- ポータルの応答時間が 1 秒を超えないようにする (リクエストの 95% に対して)
テスト条件
装置
テスト用に提供されたハードウェアには、次の 2 つの構成の物理サーバーが含まれていました。
- データベース サーバー: Intel Xeon W-2255 3.7 GHz (10 コア)、128 GB DDR4、2 x 960 GB NVMe + 2 x 8000 GB HDD
- アプリケーション サーバー: Intel Xeon E-2236 3.4 GHz (6 コア)、32 GB DDR4、2 x 480 GB SSD
2 台のデータベース サーバーと 3 台のアプリケーション サーバー (Web サーバー) を備えたクラスターが展開されました。この特定の構成は、高いクラスター パフォーマンスを確保しながら高可用性も提供するために選択されました。
イントラネットポータルパラメータをテストする
1. 標準セルフホスト版 Bitrix24 (エンタープライズ エディション)、バージョン 20.xx、最新のアップデート、およびクラスター ソリューションを作成するために有効化された Web クラスター モジュール。
2. 最終テスト開始時のデモコンテンツ:
- フィード内のメッセージ59万件
- 540,000コメント
- ニュース投稿数 40,000件
- 180,000 タスク
- 415,000件のインスタントメッセージ
3. 最終テスト開始時点でのポータル データベース内の従業員数は 111,304 人です (67 の構造部門に分散)。
負荷生成方法
負荷は、 JMeterツール バージョン 5.3.3 を使用して作成されました。テスト データは、高クエリおよびレコード負荷を処理するように設計された高性能データベースであるInfluxDBを介して記録されました。アナリストは視覚化にGrafana を使用しました。サーバーは、 Zabbix監視システムを使用して監視されました。
テストの目的で、典型的なイントラネット ポータルに特徴的な 13 のブロックから 29 のシナリオが選択されました。
- 承認
- 餌
- 検索
- チャット(グループおよび1対1)
- タスク
- カレンダー
- ドライブ
- ニュース投稿
- 画像ギャラリー
- 従業員
- プロフィール
- ビジネスプロセス
- ワークグループ
各テストでは、ポータル上のさまざまなユーザーの作業と、各ブロックの合計負荷における割合を考慮した特別な負荷分散システムが使用されました。
2015 年の前回の負荷テストとは異なり、ユーザー負荷を生成する新しい方法を使用しました。1 人の仮想ユーザーが一連の標準アクションをランダムに実行するのではなく、ポータルに独自のアカウントを持つ多数の異なるユーザーによって負荷が生成されました。
負荷ジェネレータは、これらの各ユーザーをシステムにログインさせ、そのアカウントで一連の異なるユーザー シナリオを実行しました。各新しいスクリプトの開始間のタイムアウトは 20 秒から 10 分でした。これは、日中にイントラネット ポータルにログインしてその中で作業する会社の従業員の最も現実的な動作をエミュレートするために行われました。
テスト結果
5 台の物理サーバーのクラスターにインストールされた 111,000 人のユーザー向けのイントラネット Bitrix24 テスト ポータル (エンタープライズ エディション) は、30,000 人の従業員に同時にスムーズな操作を提供できました。最大応答時間は、要求の 95% で 0.9 秒を超えませんでした。
1 時間の間に、前述の数のユーザーが生成した内容は次のとおりです。
- 39 件のニュース投稿
- フィード内のメッセージ 4,614 件
- 4,685 件のコメント
- 440 チャット
- 3,386件のインスタントメッセージ
- 2,297 のビジネスプロセス
- 912 タスク
- 367 件の文書
- 92のワークグループとプロジェクト
- カレンダーのイベント 291 件
- 2,385件の通知
24 時間の間に、次のものが生成されます:
- フィードに 110,736 件の新規エントリ
- 10,560件の個人およびグループチャット
- 2,208 のワークグループとプロジェクト
- 112,440 件のコメント
- 936 件のニュース投稿
- カレンダーのイベント 6,984 件
- 21,888 個のタスクと割り当て
- 8,808 件の文書
- 81,264件のインスタントメッセージ
- 57,240件の通知
- 55,128 のビジネスプロセス
結論
Bitrix24 のセルフホスト バージョン (エンタープライズ エディション) の負荷テストの結果、プラットフォームの高性能と高負荷状態での安定性が確認されました。5 台のサーバーのクラスター ソリューションに展開されたデモ ポータルでは、3 万ユーザーの同時操作が保証されました。これは、10 万から 20 万人の従業員を雇用する大企業の負荷プロファイルにほぼ相当します。
同時に、システムはほとんどのリクエストに対して 1 秒を超えない高速 (インターネット プロジェクトの基準でも) な応答を提供し、スムーズなユーザー エクスペリエンスを保証します。Web クラスター テクノロジーは、そのパフォーマンスと信頼性を再び証明しました。
テスト方法、シナリオ、負荷プロファイル、および物理ユーザー プロファイルの使用により、可能な限り現実に近いテスト条件を実現できました。つまり、このテストの結果を新しいプロジェクトを設計するための参照として使用できます。
また、テスト中にポータルで生成されるコンテンツ (ニュース、タスク、ドキュメント、メッセージなど) の量を最大化することが目標ではなかったことも注目に値します。目標は、実際のユーザー行動を正確にシミュレートすることでした。それでも、ポータルに情報を追加する速度も非常に速く、最も要求の厳しいクライアントのニーズも十分に満たすはずです。
当社では、法人顧客やインテグレーターのご要望に応じて、カスタム開発されたポータルやそのプロトタイプの本格的なテスト、仮説のテスト、ピーク負荷時のソリューションの安全係数の計算の基盤となるテスト方法、ポータル構成、テスト環境を提供する準備ができています。
テスト環境は、たとえば、会社の企業システムとの統合を追加して、より正確な結果を確保するなど、さらにカスタマイズできます。2015 負荷テスト
2015年12月、Bitrix24は、従業員数が多く負荷の高い大規模ビジネス環境におけるシステムパフォーマンスを評価するために、当時の最新バージョンのBitrix24の負荷テストを実施しました。
一般情報
負荷テストは、大量のテスト データが入力されている展開済みのポータルで 24 時間にわたって実行されました。その期間中、ポータルは実際の人間の訪問者の行動を模倣した受信データと継続的にやり取りされていました。
仮想ユーザーには、次のような多くの標準的な操作を実行するタスクが課されました。
- ログオンとログオフ
- フィードへの投稿とコメント
- タスクとドキュメントの使用
- CRMにレコードを追加する
- インスタントメッセージの送信など
各仮想ユーザーには、反復間にわずかな遅延を伴う無限ループで実行される多くの操作で構成される定義済みのロールが割り当てられました。
このテストは、すべての従業員がポータル データベースに登録され、その多くが 1 日を通してポータルを使用していくつかの一般的なアクションを実行するという現実のシナリオをモデル化するのに適していました。
テスト条件
テストソフトウェア:
- Bitrix24バージョン: 15.0.4
- ハードウェア: 1 台のサーバー、一般的に使用される 2 台および 3 台のサーバーのクラスター。
パラメータ:
- すぐに使える、すぐに使えるBitrix24テンプレート
デモの日付:
- 従業員数 15,683人
- フィードに38,146件の投稿
- 10,460 タスク
- 194,368 件のインスタント メッセージ
- Bitrix24.Drive 上の 2,286 個のファイル
- CRM に登録されているリード数 4,966 件、企業数 697 社
テスト環境:
- ハードウェア: Intel Xeon E3-1270v3 3.5 Hz、32 GB RAM、2 x 240 GB SSD。
- サーバー環境はBitrix Virtual Applianceを使用して構成されています。PHP は 5.6.9 に更新されました。
テスト結果
15,683 人の従業員を含むテスト データを含む、一般的な単一サーバーにインストールされたすぐに使用可能な Bitrix24 ポータル (BizPace Enterprise エディション) は、5,000 人の従業員に同時にサービスを提供できました。最大応答時間は 1,065 秒を超えませんでした。
24 時間の間に、この数の従業員が次のアクションを実行しました。
- 19,887件のインスタントメッセージを送信しました
- フィードに987件のメッセージを投稿しました
- 1,645 個のタスクを作成しました
- Bitrix24.Driveに987件の文書を追加しました
- 384 件のリードと 384 社の企業を CRM に追加しました
すぐに使用できる Bitrix24 ポータル (BizPace Enterprise エディション) を、15,683 人の従業員を含むテスト データを含む 2 台の一般的なサーバーのクラスターにインストールすると、7,500 人の従業員に同時にサービスを提供できるようになりました (+50%)。最大応答時間は 1.224 秒を超えませんでした。
24 時間の間に、この数の従業員が次のアクションを実行しました。
- 28,836件のインスタントメッセージを送信
- フィードに1,473件のメッセージを投稿しました
- 2,455 個のタスクを作成しました
- Bitrix24.Driveに1,473件の文書を追加しました
- CRMに571件のリードと571社の企業を追加しました
15,683 人の従業員を含むテスト データを含む、一般的に使用される 3 台のサーバーのクラスターにインストールされたすぐに使用可能な Bitrix24 ポータルは、9,500 人の従業員に同時にサービスを提供できました (+90%)。最大応答時間は 0.949 秒を超えませんでした。
24 時間の間に、この数の従業員が次のアクションを実行しました。
- 36,702件のインスタントメッセージを送信
- フィードに3,124件のメッセージを投稿しました
- 2,455 個のタスクを作成しました
- Bitrix24.Driveに3,124件の文書を追加しました
- 729 件のリードと 729 件の企業を CRM に追加しました
最適なパフォーマンス
予想される負荷と、Bitrix24 のセルフホスト バージョンにアクセスする毎日のユーザー数に応じて、サーバーは次のハードウェア要件を満たす必要があります。
最小ハードウェア要件
- 2GHz 32ビット (x86) または 64ビット (x64) プロセッサ以上
- 8 GB RAM(32 ビットまたは 64 ビット)以上
- 500 GB以上のハードディスク空き容量
中負荷プロジェクトのハードウェア要件
- 4GHz 32ビット(x86)または64ビット(x64)プロセッサ以上
- 64 GB RAM(32 ビットまたは 64 ビット)以上
- 2 TB以上のハードディスク空き容量
高負荷プロジェクトのハードウェア要件
- 4GHz 32ビット(x86)または64ビット(x64)プロセッサ以上
- 256 GB RAM(32ビットまたは64ビット)以上
- 5 TB以上のハードディスク空き容量