Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ニジエチューニング2014-04
Search
ニジエインフラ
May 01, 2014
Programming
0
350
ニジエチューニング2014-04
ニジエインフラ
May 01, 2014
Tweet
Share
More Decks by ニジエインフラ
See All by ニジエインフラ
ニジエチューニング2023-12
nijieinfra
0
810
ニジエチューニング2017-12
nijieinfra
0
2.6k
ニジエチューニング2016-12
nijieinfra
0
980
ニジエチューニング2014-12
nijieinfra
0
660
ニジエチューニング2014-11
nijieinfra
0
410
ニジエチューニング2014-10
nijieinfra
0
490
ニジエチューニング2014-03
nijieinfra
0
590
Other Decks in Programming
See All in Programming
Querying Design System デザインシステムの意思決定を支える構造検索
ikumatadokoro
1
1.2k
開発に寄りそう自動テストの実現
goyoki
1
360
connect-python: convenient protobuf RPC for Python
anuraaga
0
350
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
6
1.2k
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
2
6.2k
dotfiles 式年遷宮 令和最新版
masawada
1
670
React Native New Architecture 移行実践報告
taminif
1
130
AIと協働し、イベントソーシングとアクターモデルで作る後悔しないアーキテクチャ Regret-Free Architecture with AI, Event Sourcing, and Actors
tomohisa
5
18k
All(?) About Point Sets
hole
0
260
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
1
1.4k
Evolving NEWT’s TypeScript Backend for the AI-Driven Era
xpromx
0
260
関数実行の裏側では何が起きているのか?
minop1205
1
560
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
A Modern Web Designer's Workflow
chriscoyier
697
190k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Bash Introduction
62gerente
615
210k
Optimizing for Happiness
mojombo
379
70k
Code Review Best Practice
trishagee
73
19k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Building Applications with DynamoDB
mza
96
6.8k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Rails Girls Zürich Keynote
gr2m
95
14k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Transcript
ニジエチューニング4月 2014/05/01 インフラボランティア:
あんただれ • 名前 ◦ ٩( )( )۶とか₍₍⁽⁽(◌ી( ・◡・ )ʃ)とか ◦
匿名ボードだとインちゃんと呼ばれてる ◦ コロコロ変わる • インフラ・バックエンドのボランティアスタッフです • 2014/03/18にJoin • 絵は描いてみたいので練習してたり 今月本業と他が忙しくてあんま作業してない!
アニメーションgifリサイズロジック修正 • ジオメトリの扱い方の問題で以下のケースを含む場合で表示がおかしくなる ◦ フレーム間でサイズが違う場合 ◦ フレームでの開始座標が(0,0)以外の場合 ◦ コード見る限りはパラパラ漫画以外は影響を受けていたと思われる •
ジオメトリの計算を適切に行うように修正 • 一応それっぽい箇所は潰したけどコードが分散していて潰しきれてないかも ◦ 最近の投稿で微妙な場合はページを教えてもらえると調査できます
Location整理及びパラメータ合わせ • 幾つかのLocationに分散していた配信キャッシュサーバをバックボーン的に 有利な東京に配置 • レイテンシの改善に繋がった(多分平均で10~15msぐらい?) • カーネルパラメータの差分がありすぎたため画像配信系は再構築
Varnish4投入 • stream及びgrace動作でミス時の体感を軽く • キャッシュサーバi/o負荷も軽減(Persistent) • 1台残して(比較用)全部Varnish4に
Varnish4投入 3.0.5 4.0.0
AP側ProxyをVarnish4に変更 • 今までヘルスチェックをしていなかったためするように ◦ 配下wsがdownしたら1秒ぐらいで切り離されるように ◦ staticfile監視なのでまだ改善の余地はある • キャッシュ可能なものはキャッシュするように •
グローバル対ローカルでトラフィックが2:1になった
SSLLabsの評価を上げておいた • 匿名ボード見てたらSSLLabsの評価が低いと言われていたのでAにしておいた • A+はHSTSしないとだめなので一応最高評価
真っ白ページ対策 • ApacheがOut of memory祭りでページが白くなってた • 指定されていた値が結構高かったのでオフピークでも30分ぐらいで再生成され るぐらいに調整(MaxRequestPerChild) • 後日spare系も調整
OOM祭 対策
HTTPSのパフォーマンスあげた • いくつか微妙なパラメータなどがあったのでチューニング • ついでにspdyも有効に
HTTP 1.42s HTTPS 2.29s (before tune)
SPDY 1.44s HTTPS 1.46s (after tune)
まとめ • 画像配信系で安定性に関わるところはほぼ潰したはず • SSLまわりもほぼ問題潰した、ある程度まともに使えるレベルかと • 来月はAP側を重点的に手を入れていきたい