Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Gatling砲をぶっ放せ / Let Measure Performance with Ga...
Search
Akira Morikawa
March 08, 2019
Technology
0
970
Gatling砲をぶっ放せ / Let Measure Performance with Gatling
TECH DO #13
https://techdo.connpass.com/event/122193/
Akira Morikawa
March 08, 2019
Tweet
Share
More Decks by Akira Morikawa
See All by Akira Morikawa
コロナ禍だからこそ考えるオフラインコミュニティの意義 / significance of community
ariaki
0
1.9k
アウトプットの始め方/start output 20230121
ariaki
0
310
web-secure-phpcon2020
ariaki
3
3.4k
オブジェクトライフサイクルとメモリ管理を学ぼう / OOC 2020
ariaki
8
3.7k
エンジニアはアウトプットによって成長できるのか? / Grow with your output
ariaki
24
6.5k
アウトプットを始めよう / How to begin output jawsug-bgnr
ariaki
2
3.8k
参加者の安全を守れていますか? / Protecting community safety
ariaki
1
7.1k
タピオカに学ぶ二段階認証 / tapioca-mfa
ariaki
5
1.3k
古に学ぶ個人開発のススメ / My recommendation of personal development
ariaki
1
1.5k
Other Decks in Technology
See All in Technology
人工衛星のファームウェアをRustで書く理由
koba789
15
8.3k
dbt開発 with Claude Codeのためのガードレール設計
10xinc
2
1.3k
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
560
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
200
Oracle Cloud Infrastructure IaaS 新機能アップデート 2025/06 - 2025/08
oracle4engineer
PRO
0
110
MagicPod導入から半年、オープンロジQAチームで実際にやったこと
tjoko
0
110
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
120
Unlocking the Power of AI Agents with LINE Bot MCP Server
linedevth
0
120
新規プロダクトでプロトタイプから正式リリースまでNext.jsで開発したリアル
kawanoriku0
1
200
初めてAWSを使うときのセキュリティ覚書〜初心者支部編〜
cmusudakeisuke
1
280
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
890
いま注目のAIエージェントを作ってみよう
supermarimobros
0
350
Featured
See All Featured
Navigating Team Friction
lara
189
15k
Site-Speed That Sticks
csswizardry
10
820
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Side Projects
sachag
455
43k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
3k
Transcript
Mar 08, 2019 | @ariaki4dev | #techdo 砲をぶっ放せ Let Measure
Performance with Gatling
Mar 08, 2019 | @ariaki4dev | #techdo 2 About Me
ariaki ( ありあき ) @ariaki4dev #engineers_lt , #techdo MEDIA DO Co.,Ltd. Tokyo, Japan https://press.forkwell.com/entry/2019/01/30/engineer_component https://shiganai.org/ep/sp52-ariaki4dev https://note.mu/ariakira
Mar 08, 2019 | @ariaki4dev | #techdo 3 What’s Gatling
• Webアプリケーションの負荷テストツール • オープンソース(※製品版あり) • 製品の開発言語はScala • シナリオファイルはScala DSLで書ける • ハイパフォーマンス • レポートHTMLが綺麗 • https://gatling.io/
Mar 08, 2019 | @ariaki4dev | #techdo https://gatling.io/ https://jmeter.apache.org/ http://grinder.sourceforge.net/
http://tsung.erlang-projects.org/ https://www.microfocus.com/produc ts/loadrunner-load-testing/ 4 Trends 主要なロードテストツール
Mar 08, 2019 | @ariaki4dev | #techdo 5 Trends
Mar 08, 2019 | @ariaki4dev | #techdo Demonstration
Mar 08, 2019 | @ariaki4dev | #techdo 7 How to
Install 直接インストール パッケージマネージャを利用 1. 以下よりダウンロード 2. 適当な場所に解凍 3. 以下のファイルを実行 [macOS/Linux] bin/gatling.sh [Windows] bin/gatling.bat • maven • sbt
Mar 08, 2019 | @ariaki4dev | #techdo 8 How to
Install 1. それぞれ最新版をインストールします ◦ JDK 11 (current) ◦ Scala sbt (current) 2. 環境変数を設定します ◦ JAVA_HOME ◦ SBT_HOME 3. 以下のコマンドでデモプロジェクトをダウンロードします $ git clone https://github.com/gatling/gatling-sbt-plugin-demo.git sbt使用時の詳細手順
Mar 08, 2019 | @ariaki4dev | #techdo 9 How to
Install sbt使用時の詳細手順 4. リポジトリのディレクトリに移動し、 sbt を実行します ※初回実行時のみパッケージダウンロードが必要なため時間がかかります 5. sbt シェルが起動します ◦ 全体テスト … > gatling:test ◦ 特定テスト … > gatling:testOnly [クラス名]
Mar 08, 2019 | @ariaki4dev | #techdo 10 How to
Install project build.properties plugins.sbt src build.sbt + resources scala … ビルド設定を記述する … プラグインを読込設定する … テスト時に読み込まれるリソースファイルを配置する … テスト時に読み込まれるシナリオファイルを配置する … ビルドオプションを設定する ディレクトリ構成
Mar 08, 2019 | @ariaki4dev | #techdo 11 Test Code
src/test/scala/mediado/TestSimulation.scala ①クライアント設定 ②シナリオ作成 ③テスト実行設定
Mar 08, 2019 | @ariaki4dev | #techdo 12 Test Code
シナリオ設定 シナリオ名 リクエスト名 リクエストパス レスポンス検証 • HTTP/1.x 200を返却している • <h1>HOME</h1>タグが存在する 複数手続きを1シナリオで実行
Mar 08, 2019 | @ariaki4dev | #techdo 13 Test Code
シナリオ設定例
Mar 08, 2019 | @ariaki4dev | #techdo 14 Test Code
シナリオ設定例
Mar 08, 2019 | @ariaki4dev | #techdo 15 Test Code
テスト実行設定 設定項目 解説 nothingFor(10 seconds) 10秒間何もしない atOnceUsers(10) 10クライアントから同時に1回接続 rampUsers(10) over (5 seconds) 5秒かけて10クライアントまで線形に増加 constantUsersPerSec(10) during (5 seconds) 5秒間、1秒あたり10クライアントが接続 rampUsersPerSec(10) to 20 during (5 minutes) 5分間かけて、1秒あたり10→20クライアントに増加 heavisideUsers(100) over(5 minutes) ヘヴィサイドの段階関数を元にクライアント数を増加 https://gatling.io/docs/3.0/general/simulation_setup/
Mar 08, 2019 | @ariaki4dev | #techdo 16 Conclude •
Scala DSLでシナリオを柔軟に作成できる ◦ コード書くの楽しい ◦ ソース管理しやすい(コードなので) ◦ 複雑なシナリオ作成もでき、GUIより辛くない • Enterpriseレベルサポートがある • JMeterと比べて機能が少なく残念な部分もある
Build Something Amazing written by ariaki4dev