狠狠撸
Submit Search
10年モノ熟成笔别谤濒との付き合い方
?
Download as PPTX, PDF
?
0 likes
?
4,043 views
Masaki Nakagawa
Follow
YAPC::Hokkaido 2016 SAPPORO 発表資料です。
Read less
Read more
1 of 24
Download now
More Related Content
10年モノ熟成笔别谤濒との付き合い方
1.
YAPC::Hokkaido 2016 SAPPORO YAPC::Hokkaido
2016 SAPPORO 10年モノ熟成笔别谤濒との付き合い方 2016/12/10 アイランド株式会社 中川 勝樹 (@ikasam_a)
2.
YAPC::Hokkaido 2016 SAPPORO 自己紹介 ?
中川 勝樹 ? アイランド株式会社 (2016/07/01-) ? @ikasam_a ? github.com/masaki ? metacpan.org/MASAKI 1
3.
YAPC::Hokkaido 2016 SAPPORO 会社紹介 2 www.ai-land.co.jp
4.
YAPC::Hokkaido 2016 SAPPORO アイランドのライフスタイルメディア 3 「おとりよせネット」 otoriyose.net 「レシピブログ」 recipe-blog.jp
5.
YAPC::Hokkaido 2016 SAPPORO We’re
hiring! ? エンジニア募集しています! 4 https://www.wantedly.com/projects/72445
6.
YAPC::Hokkaido 2016 SAPPORO5
7.
YAPC::Hokkaido 2016 SAPPORO Food
Service Engineers Meetup (ロゴ募集中) 6
8.
YAPC::Hokkaido 2016 SAPPORO7 「おとりよせネット」 otoriyose.net 「レシピブログ」 recipe-blog.jp 13年
11年
9.
YAPC::Hokkaido 2016 SAPPORO8 over
10 years
10.
YAPC::Hokkaido 2016 SAPPORO9 Language
< System
11.
YAPC::Hokkaido 2016 SAPPORO レシピブログのシステム概要 ?
FastCGI (Perl 5.10 + 独自WAF) ? Apache 2.2 ? PostgreSQL 9 ? Elasticsearch ? File Cache + memcached (2016/10~) ? CloudFront 10
12.
YAPC::Hokkaido 2016 SAPPORO おとりよせネットのシステム概要 ?
CGI (Perl 5.10) ? Apache 2.2 ? PostgreSQL 9 ? File Cache / Page Cache ? + CloudFront (2016/11~) 11
13.
YAPC::Hokkaido 2016 SAPPORO 技術?設計課題 ?
利用技術の陳腐化 ? CGI、FastCGI、… ? 開発環境や開発プロセスの停滞 ? 「運用でカバー」 ? そろそろモノリシックの規模も課題に 12
14.
YAPC::Hokkaido 2016 SAPPORO 熟成した問題 ?
独自WAF利用とその聖域化問題 ? メンテナンスやアップデートが行き届かず ? 手の入れ方がわからず運用でカバー ? 秘伝のタレ化 ? 掃除不足によるゴミ屋敷問題 ? 不要なソースコードが残ったまま ? 不要なファイルが残ったまま ? 次第に影響範囲が不明になり消せなくなるパターン 13
15.
YAPC::Hokkaido 2016 SAPPORO どう向き合うか? ?
背景を理解する ? 事実を把握する ? 改善する ? 革新を起こす 14
16.
YAPC::Hokkaido 2016 SAPPORO 背景理解 ?
とにかくコードを読む ? (個人的に)Perl でよかった ? 疑問や経緯はわかるまで全部聞く ? 今目の前にある事象は、過去の決定の積み重ね ? 当時は何らかの意図や判断が必ずある ? 「システムに歴史あり」 ? ここまで事業を支えてきた事実をリスペクトする ? その上で諦めてきたことを知ろう 15
17.
YAPC::Hokkaido 2016 SAPPORO 事実把握 ?
ログをどんどん出す ? 手がかりは多く、余れば後で捨てるだけ ? carp, croak → cluck, confess ? $logger->warn($@) ? リソースを監視する ? 推測するな、計測せよ ? CloudForecast 入れるところから始めた 16
18.
YAPC::Hokkaido 2016 SAPPORO [改善]
WAFの改修 ? コードを読んだ結果、普通に改修可能になった ? (個人的に)Catalyst ライクな WAF でよかった ? 運用でカバーしていた部分が根本的解決へ ? 結果、コード自体もシンプルでスリムに 17
19.
YAPC::Hokkaido 2016 SAPPORO [改善]
パフォーマンスチューニング ? ログとリソースグラフのおかげ ? ログに DB の max connection エラーを発見 ? DB チューニングで max connection 確保 ? まだ HTTP リクエストがタイムアウトしてた ? TCP connection / HTTP がある値で頭打ちになってた ? ServerLimit, MaxClients 周りを設定 ? 残るは DC 帯域が…(共用なので) 18
20.
YAPC::Hokkaido 2016 SAPPORO [改善]
TV露出の対応 ? TV (地上波) で取り上げられると即死(30分落ち) ? 「来週ヒルナンデスに出ます」という死の宣告 ? 画像が豊富でページ当たりの転送量が… ? とりあえず CloudFront 載せよう ? アセットが世代管理されてないからキャッシュが… ? mod_ext_filter っぽいのを書いた ? CGI プロセスが膨大に… ? SpeedyCGI (!) を引っ張りだした ? 参照系はことごとく静的に HTML 化 19
21.
YAPC::Hokkaido 2016 SAPPORO [革新]
AWS導入 ? 抜本的に環境を変える ? 改善だけじゃ解決しきれない問題もある ? ついでに残った問題も解決する ? ドサクサに紛れて色々仕込む 20
22.
YAPC::Hokkaido 2016 SAPPORO [革新]
システムリプレース ? 抜本的に(ry ? ついでに(ry 21
23.
YAPC::Hokkaido 2016 SAPPORO なぜ革新なのか ?
ワクワク感が出る ? 楽しさはモチベーションの源泉 ? 「やるからには面白く、工夫して」? 2016 @ikasam_a ? 本当は色々狙ってる ? 大きな変化を伴わないと解決できない問題に向き合う ? 今ある他の課題も一緒に解決できる方法を考える ? 両立できる施策をしれっと狙う ? 理想(革新)だけ追っても色んな意味で難しい 22
24.
YAPC::Hokkaido 2016 SAPPORO まとめ ?
アイランドではおやつにローストビーフが出ます ? 10年過ぎると色んなところに地雷がありますが、こうなる に至った当時の判断背景が必ずあります ? ここまで継続させてきた先駆者の実績をリスペクトしま しょう ? 背景を理解した上で事実を知れば、どうやって対応して いけばよいのか見えてきます 23
Download now