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
「最近変わったね」と素早く気付け / 20170828 Performance Test
Search
szkayeah
August 28, 2017
Programming
0
370
「最近変わったね」と素早く気付け / 20170828 Performance Test
2017/08/28 ロックオンLTバトル資料です。
kintoneチームで実施しているAPIパフォーマンス計測について。
szkayeah
August 28, 2017
Tweet
Share
More Decks by szkayeah
See All by szkayeah
kintoneを丸裸にするモニタリング&ロギングツール / 20191108 kintone monitoring and logging
szkayeah
2
1k
スキルグラデーション!~虹色のkintone チームの中で私が目指すもの~ / 20190914 Web application engineer in cybozu
szkayeah
0
140
kintoneのリリースを加速する!性能検証自動化 / 20181027 Performance Test
szkayeah
1
1k
kintoneをとりまく自動テストたち / 20180305 Kintone's Automatic Test
szkayeah
0
700
環境構築はいらないよ GASでサクッとbotをつくろう / 20171202 Creating Bot with GAS
szkayeah
0
200
Other Decks in Programming
See All in Programming
もう少しテストを書きたいんじゃ〜 #phpstudy
o0h
PRO
4
180
ML.NETで始める機械学習
ymd65536
0
220
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
190
SwiftUI Viewの責務分離
elmetal
PRO
2
260
GAEログのコスト削減
mot_techtalk
0
120
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
120
GoとPHPのインターフェイスの違い
shimabox
2
200
メンテが命: PHPフレームワークのコンテナ化とアップグレード戦略
shunta27
0
290
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
53
18k
Jakarta EE meets AI
ivargrimstad
0
160
From the Wild into the Clouds - Laravel Meetup Talk
neverything
0
100
Rubyで始める関数型ドメインモデリング
shogo_tksk
0
130
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
We Have a Design System, Now What?
morganepeng
51
7.4k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Typedesign – Prime Four
hannesfritz
40
2.5k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
The Invisible Side of Design
smashingmag
299
50k
Why Our Code Smells
bkeepers
PRO
336
57k
Facilitating Awesome Meetings
lara
52
6.2k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Transcript
「最近変わったね」と素早く気付け サイボウズ株式会社 チーム 鈴木 亜耶 (@szkayeah)
Speaker ▌鈴木 亜耶 (@szkayeah) サイボウズのエンジニア 今年1月に中途入社 好き:CI・自動化・自動テスト
チーム所属
気付くのが遅すぎて、 取り返しがつかなくなった事はありますか?
APIのパフォーマンスを毎日計測できるようにした!
おしながき ▌ とは(かるーく) ▌やったこと ▌苦労したこと・工夫 ▌これから
とは
とは ▌サイボウズの業務系クラウドサービス ノンプログラミングでデータベース型のアプリ作成 社員間のコミュニケーション機能
とは つくって ためて かきこむ
とは ▌上司煽り広告で一部では話題に
やったこと
やったこと ▌従来の性能検証の問題点 劣化の検知時期が遅い 2~3か月ごとのリリースモジュールが試験期間に入ったら 個別に検証を回すと負担が大きい 1週間近くかかる
具体的にどのモジュールが劣化したか分かりにくい 画面への負荷テストに近い ▌完全に代わりにならなくても一部代替できるものを!
やったこと 開発環境VM 開発中 普段使い モジュールUP API速度計測 測定結果 レコード登録 & 性能劣化通知
出典: https://jenkins.io/ http://junit.org/junit4/ https://www.python.org/
やったこと ▌毎日自動で実行 ▌APIごとに性能の推移を確認できる ▌APIごとに性能劣化が検知できる
苦労したこと・工夫
苦労したこと・工夫 ▌測定結果の安定化 環境面 計測方法 集計方法
苦労したこと・工夫 ▌測定結果の安定化 環境面 毎日VMを作り直す VM上は1ドメインのみ、他用途では使用しない 並列実行しない
苦労したこと・工夫 ▌測定結果の安定化 計測方法 同じ条件で複数回計測する(数十~数百回) 同じ条件でもinputパラメータはバラす 計測値が小さくなりすぎないようにデータ量を増やす
苦労したこと・工夫 ▌測定結果の安定化 集計方法 計測結果の中央値をとる(not平均値)
苦労したこと・工夫 ▌オライリー「Javaパフォーマンス」 2章のパフォーマンステストで似たような内容が Javaに限らない 出典:https://www.oreilly.co.jp/books/9784873117188/
これから
これから ▌性能劣化の検知精度UP ま、まいにちJenkins先生が怒っている…! ▌ジョブ実行時間の短縮 現在5時間
ありがとうございました!