CentOS8に負荷試験ツールLocustを入れてのテスト その1 - 株式会社CoLabMix

CentOS8に負荷試験ツールLocustを入れてのテスト その1

Pythonの負荷試験ツールLocustの検証です。

「イナゴ」という意味のLocustでシナリオ試験などをpythonコードで書いて試験することができます。

また、WebUIを使って試験を行うことができます。

アタックに必要なノードなどを増やしていきながらの試験も実施できます。

今回はCentOS8に導入していました。

 

Locustのインストール

以下の手順でインストールを行います。
pipを最新にアップデートしておきます。

今回は1.6.0のものがインストールされております。

Firewalldを利用していて、WebUIを使用する場合は以下で停止しておきます。

 

Locustを使った負荷試験

まず利用方法としてドキュメントは以下にあります。

https://docs.locust.io/en/stable/

今回は非常に簡易なファイルとして以下を用意しました。

「locustfile.py」というファイル名で保存しています。

こちらを実行するとWebUIが起動します。

 

ブラウザで「http://xxx.xxx.xxx.xxx:8089/」(設定機器のIPにしてください)にアクセスすると以下のような画面になります。

こちらのWebUIを利用してテストを行います。

設定する内容は以下となります。

Number of total users to simulate
同時接続ユーザー数の最大値

Hatch rate
1秒毎に増加していくユーザーの数

Host
接続をを行うサーバのURL(負荷試験の対象)

 

こちらに値を入れるとテストが開始します。

以下の画面のようにテストを行います。(上から3、3、接続ホストの値を入れました。)

こちらでテストの結果を確認することができます。

サーバ側のアクセスログでは以下のような形で出ておりました。

非常に簡単なテストでしたがログインをしての試験や、item_idを複数用意してのシナリオの試験が実施可能となります。

今回はこの辺で。

 

 

このブログは株式会社CoLabMixによる技術ブログです。

GCP、AWSなどでのインフラ構築・運用や、クローリング・分析・検索などを主体とした開発を行なっています。

Ruby on RailsやDjango、Pythonなどの開発依頼などお気軽にお声がけください。

開発パートナーを増やしたいという企業と積極的に繋がっていきたいです。

お問い合わせやご依頼・ご相談など

     

     

    関連記事

    1. ElasticSearchでjava.lang.OutOfMemory…

    2. CentOS環境の python3.6(pyenv環境)で Scrap…

    3. 第24回Elasticsearch勉強会「入門編」 に参加してみた

    4. CentOS7でscrapy-splashを使ってJavaScript…

    5. scrapy-redisを使って、redisを使ったクローリングを試し…

    6. SumEvalというPythonのテキスト評価用のライブラリを試してみ…