Your SlideShare is downloading. ×
pixivのインフラを支える技術
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

pixivのインフラを支える技術

8,623
views

Published on

Published in: Self Improvement

1 Comment
18 Likes
Statistics
Notes
No Downloads
Views
Total Views
8,623
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
84
Comments
1
Likes
18
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. pixivのインフラを 支える技術 2009/09/25 ピクシブ株式会社 上薗 竜太
  • 2. 自己紹介
  • 3. 自己紹介 上薗 竜太 kamipo ピクシブ株式会社 2008年11月入社 インフラの設計・構築・運用管理
  • 4. アジェンダ pixivについて pixivのインフラ 自作サーバ システム構成 運用構築あれこれ まとめ
  • 5. pixivについて
  • 6. pixivについて
  • 7. pixivについて イラストコミュニケーションサービス 2007年09月10日 〜  サービス規模 125万ユーザ 8億5000万PV/月 3000万PV/日 関連サービス drawr http://drawr.net/ drawTwit http://drawtwit.com/ サーバ160台
  • 8. pixivのインフラ 自作サーバ
  • 9. 自作サーバ
  • 10. 自作サーバ
  • 11. 自作サーバ
  • 12. 自作サーバ
  • 13. 自作サーバ
  • 14. 自作サーバ
  • 15. pixivのインフラ システム構成
  • 16. システム構成 OS Linux 2.6 (Debian lenny) Webサーバ apache 2.2.9 (prefork, event) データベース mysql 5.0.67 (tritonn 1.0.12) アプリケーション PHP 5.2.6 (+ APC)
  • 17. システム構成 ロードバランサ mod_proxy_balancer (L7) LVS (L4) キャッシュサーバ memcached 1.4.1 (データベース) squid 2.7 (画像)
  • 18. システム構成
  • 19. システム構成
  • 20. 運用構築あれこれ
  • 21. apacheのMPM prefork PHPサーバ用 event workerの改良版 proxy、画像サーバ用
  • 22. KeepAlive prefork KeepAlive Off event KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 2
  • 23. mysqlの運用 mysqlは自動起動にしない ウォームアップ後に本番に投入 cat *.MY[ID] *.SEN* とにかくデータをメモリに乗せることが重要 メモリ増設 4GB -> 8GB データベース分割 現在4つに分割している データベース分割が難しいときは参照分割
  • 24. mysqlの運用 メディック 復旧専用のスレーブ機 障害機にスナップショットを転送
  • 25. netfilter (iptables) ip_conntrack_maxの値が規定値だと小さい ip_conntrack: table full, dropping packet. デフォルトだと65536 sysctl -w ¥ net.ipv4.netfilter. ip_conntrack_max=262144
  • 26. netfilter (iptables)
  • 27. noatime/relatime デフォルト 常にatimeを更新する noatime 常にatimeを更新しない relatime atimeがctimeやmtimeより古いとき更新
  • 28. noatime/relatime
  • 29. noatime/relatime
  • 30. noatime/relatime
  • 31. 運用管理あれこれ インストール PXEブート preseed setup.sh Subversion configファイルのバージョン管理 commit時にMLに通知
  • 32. 運用管理あれこれ アプリケーションのデプロイ staging環境から本番環境にrsync Capistrano 多数のサーバにコマンド発行できる cap invoke COMMAND='cat /proc/loadavg'
  • 33. まとめ pixivのインフラについて紹介しました セオリー通りでなんとかなります 運用や構築について ちょっとしたことが大きく効いてきます
  • 34. ご清聴  ありがとうございました