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
APIサーバのレスポンス速度をふわっと把握したかった
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
ramo798
January 23, 2024
Programming
450
0
Share
APIサーバのレスポンス速度をふわっと把握したかった
若手・学生サーバーサイドエンジニアLT会
ラクーンホールディングス x ゆめみ のコラボLT会です!
https://yumemi.connpass.com/event/301942/
ramo798
January 23, 2024
More Decks by ramo798
See All by ramo798
メールの分類をLLMをつかってやってみた
ramo798
0
90
Other Decks in Programming
See All in Programming
「速くなった気がする」をデータで疑う
senleaf24
0
150
TiDBのアーキテクチャから学ぶ分散システム入門 〜MySQL互換のNewSQLは何を解決するのか〜 / tidb-architecture-study
dznbk
1
110
AI時代のPhpStorm最新事情 #phpcon_odawara
yusuke
0
150
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
260
ハンズオンで学ぶクラウドネイティブ
tatsukiminami
0
110
Codex CLI でつくる、Issue から merge までの開発フロー
amata1219
0
340
Nuxt Server Components
wattanx
0
260
Coding as Prompting Since 2025
ragingwind
0
780
Oxlintとeslint-plugin-react-hooks 明日から始められそう?
t6adev
0
110
存在論的プログラミング: 時間と存在を記述する
koriym
5
850
PDI: Como Alavancar Sua Carreira e Seu Negócio
marcelgsantos
0
110
Radical Imagining - LIFT 2025-2027 Policy Agenda
lift1998
0
250
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Docker and Python
trallard
47
3.8k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Statistics for Hackers
jakevdp
799
230k
4 Signs Your Business is Dying
shpigford
187
22k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Making Projects Easy
brettharned
120
6.6k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
130
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
270
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Transcript
APIサーバのレスポンス速度 をふわっと把握したかった ramo
目次 • 自己紹介 • やりたいこと • きっかけ • 技術選定の話 •
使い方 • 結果
自己紹介 ramo 仕事→ URIHOというサービス開発。 好きなフレームワーク→ remix, sveltekit マイブーム→ cloudflare workers
最近matzさんとツーショット撮りました
URIHOについて 販売企業 URIHOは企業間取引において発生する 売掛金の未払い・倒産に備える保証サービスです。 購入企業
やりたいこと バックエンドのAPIサーバのレスポンス速度を計測したい
きっかけとか → 社内の人がISUCONを楽しそうにやってて羨ましかった →→ 来年はでる → そういえば自分のやってるサービスはどうなっているのか? →→ いろんなパターンで測定してみたい →→→ データがいっぱあるときとか
きっかけとか 「推測するな、計測せよ」と常々言われいていますので 計測することにしました。
今回やろうと思ったこと ローカルで動くもので測れるようにしたい → 既存機能の改修したときのベンチマークしたい → テストデータを多くした場合に速度の低下が起きないか等を気づきたい バックエンドAPIのレスポンス速度の計測から始める → ミニマムに始める → システムの構成的に、ボトルネックはそこになりがち
技術選定 Locustというpythonのライブラリを使うことにしました。 テストシナリオをコードで記述ができる → pythonで前処理等が書ける →→ ログイン処理が楽。共有が楽。テストデータの挿入ができる
Locustの使い方 from locust import HttpUser, task, between class ApiUser(HttpUser): wait_time
= between(1, 5) def on_start(self): self.client.post("/accounts/sign_in", { "account[email]": "email", "account[password]": "password" }) @task def load_test_api_endpoint(self): self.client.get("/endpoint")
使い方 locust -f your_script_name.py
結果
結果と展望 → ローカルサーバなので実際の数値ではないですが、大まかに傾向が把握で きました。 → 定期的に測るようにして機能が増えていくごとにどのように変化していく かを測定できると面白そう → 大量のテストデータを作成しての挙動も確認できるので未来のしんどくな るポイントを発見できる可能性がある
以上です。