Suche senden
Hochladen
memcachedとトラブルとソーシャルアプリ
•
Als PPTX, PDF herunterladen
•
18 gefällt mir
•
8,534 views
Suguru Shirai
Folgen
CyberX NoSQL semi 発表資料
Weniger lesen
Mehr lesen
Technologie
Melden
Teilen
Melden
Teilen
1 von 56
Jetzt herunterladen
Empfohlen
U40 名古屋会場 吉本
U40 名古屋会場 吉本
calil jp
Memcachedの仕組みと設定
Memcachedの仕組みと設定
Tatsuya Akashi
PHPで四捨五入
PHPで四捨五入
Junpei Nakada
複数サーバでセッションを共有する冴えたやりかた
複数サーバでセッションを共有する冴えたやりかた
Junpei Nakada
実践 memcached
実践 memcached
Masahiro Nagano
Devsumi2013【15-e-5】NoSQLの野心的な使い方 ~Apache Cassandra編~
Devsumi2013【15-e-5】NoSQLの野心的な使い方 ~Apache Cassandra編~
kishimotosc
Java web application testing
Java web application testing
Tokuhiro Matsuno
AWS Black Belt Techシリーズ Amazon ElastiCache
AWS Black Belt Techシリーズ Amazon ElastiCache
Amazon Web Services Japan
Empfohlen
U40 名古屋会場 吉本
U40 名古屋会場 吉本
calil jp
Memcachedの仕組みと設定
Memcachedの仕組みと設定
Tatsuya Akashi
PHPで四捨五入
PHPで四捨五入
Junpei Nakada
複数サーバでセッションを共有する冴えたやりかた
複数サーバでセッションを共有する冴えたやりかた
Junpei Nakada
実践 memcached
実践 memcached
Masahiro Nagano
Devsumi2013【15-e-5】NoSQLの野心的な使い方 ~Apache Cassandra編~
Devsumi2013【15-e-5】NoSQLの野心的な使い方 ~Apache Cassandra編~
kishimotosc
Java web application testing
Java web application testing
Tokuhiro Matsuno
AWS Black Belt Techシリーズ Amazon ElastiCache
AWS Black Belt Techシリーズ Amazon ElastiCache
Amazon Web Services Japan
ElastiCacheを利用する上でキャッシュをどのように有効に使うべきか
ElastiCacheを利用する上でキャッシュをどのように有効に使うべきか
Amazon Web Services Japan
あなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情について
あなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情について
Shinichi Kozake
データベース技術の羅針盤
データベース技術の羅針盤
Yoshinori Matsunobu
Prometheus Storage
Prometheus Storage
Fabian Reinartz
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
infinite_loop
A Better Cached
A Better Cached
Kazuho Oku
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
Manabu Koga
Developer networkを活用しよう
Developer networkを活用しよう
Yusuke Suzuki
今すぐはじめるIoT_配布用
今すぐはじめるIoT_配布用
Mana Nakano
20110309 kohshikai slides
20110309 kohshikai slides
理栄 山口
プレゼン読書会SNS
プレゼン読書会SNS
Taku Kawamura
中国sns勉強会 11月4日
中国sns勉強会 11月4日
Shunsuke Oka
再就職難の時代だからこそ、出来ること
再就職難の時代だからこそ、出来ること
Yukio Saito
もっとドキュメントが日本語になりますように
もっとドキュメントが日本語になりますように
Takako Miyagawa
チームがリモートで活動するために大事にしている10のことbokete140219
チームがリモートで活動するために大事にしている10のことbokete140219
Osamu Ise
what is China`s Social Media ? 中国sns勉強会 11月21日
what is China`s Social Media ? 中国sns勉強会 11月21日
Shunsuke Oka
浪江タブレット講習会 福島大学災害ボランティアセンター2015/10/07
浪江タブレット講習会 福島大学災害ボランティアセンター2015/10/07
CodeforNamie
東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也
東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也
Preferred Networks
AWSを使いこなすポイント(仮)
AWSを使いこなすポイント(仮)
Suguru Shirai
phpstudy_php_to_node
phpstudy_php_to_node
Suguru Shirai
レガシーコード読書会 20120618
レガシーコード読書会 20120618
Suguru Shirai
リファクタリング読書会20120220
リファクタリング読書会20120220
Suguru Shirai
Weitere ähnliche Inhalte
Andere mochten auch
ElastiCacheを利用する上でキャッシュをどのように有効に使うべきか
ElastiCacheを利用する上でキャッシュをどのように有効に使うべきか
Amazon Web Services Japan
あなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情について
あなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情について
Shinichi Kozake
データベース技術の羅針盤
データベース技術の羅針盤
Yoshinori Matsunobu
Prometheus Storage
Prometheus Storage
Fabian Reinartz
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
infinite_loop
A Better Cached
A Better Cached
Kazuho Oku
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
Manabu Koga
Andere mochten auch
(7)
ElastiCacheを利用する上でキャッシュをどのように有効に使うべきか
ElastiCacheを利用する上でキャッシュをどのように有効に使うべきか
あなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情について
あなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情について
データベース技術の羅針盤
データベース技術の羅針盤
Prometheus Storage
Prometheus Storage
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
A Better Cached
A Better Cached
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
Ähnlich wie memcachedとトラブルとソーシャルアプリ
Developer networkを活用しよう
Developer networkを活用しよう
Yusuke Suzuki
今すぐはじめるIoT_配布用
今すぐはじめるIoT_配布用
Mana Nakano
20110309 kohshikai slides
20110309 kohshikai slides
理栄 山口
プレゼン読書会SNS
プレゼン読書会SNS
Taku Kawamura
中国sns勉強会 11月4日
中国sns勉強会 11月4日
Shunsuke Oka
再就職難の時代だからこそ、出来ること
再就職難の時代だからこそ、出来ること
Yukio Saito
もっとドキュメントが日本語になりますように
もっとドキュメントが日本語になりますように
Takako Miyagawa
チームがリモートで活動するために大事にしている10のことbokete140219
チームがリモートで活動するために大事にしている10のことbokete140219
Osamu Ise
what is China`s Social Media ? 中国sns勉強会 11月21日
what is China`s Social Media ? 中国sns勉強会 11月21日
Shunsuke Oka
浪江タブレット講習会 福島大学災害ボランティアセンター2015/10/07
浪江タブレット講習会 福島大学災害ボランティアセンター2015/10/07
CodeforNamie
東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也
東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也
Preferred Networks
Ähnlich wie memcachedとトラブルとソーシャルアプリ
(11)
Developer networkを活用しよう
Developer networkを活用しよう
今すぐはじめるIoT_配布用
今すぐはじめるIoT_配布用
20110309 kohshikai slides
20110309 kohshikai slides
プレゼン読書会SNS
プレゼン読書会SNS
中国sns勉強会 11月4日
中国sns勉強会 11月4日
再就職難の時代だからこそ、出来ること
再就職難の時代だからこそ、出来ること
もっとドキュメントが日本語になりますように
もっとドキュメントが日本語になりますように
チームがリモートで活動するために大事にしている10のことbokete140219
チームがリモートで活動するために大事にしている10のことbokete140219
what is China`s Social Media ? 中国sns勉強会 11月21日
what is China`s Social Media ? 中国sns勉強会 11月21日
浪江タブレット講習会 福島大学災害ボランティアセンター2015/10/07
浪江タブレット講習会 福島大学災害ボランティアセンター2015/10/07
東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也
東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也
Mehr von Suguru Shirai
AWSを使いこなすポイント(仮)
AWSを使いこなすポイント(仮)
Suguru Shirai
phpstudy_php_to_node
phpstudy_php_to_node
Suguru Shirai
レガシーコード読書会 20120618
レガシーコード読書会 20120618
Suguru Shirai
リファクタリング読書会20120220
リファクタリング読書会20120220
Suguru Shirai
【CyberX読書会】リファクタリング 2012/02/06
【CyberX読書会】リファクタリング 2012/02/06
Suguru Shirai
Tuiningathonにいってみた
Tuiningathonにいってみた
Suguru Shirai
Mehr von Suguru Shirai
(6)
AWSを使いこなすポイント(仮)
AWSを使いこなすポイント(仮)
phpstudy_php_to_node
phpstudy_php_to_node
レガシーコード読書会 20120618
レガシーコード読書会 20120618
リファクタリング読書会20120220
リファクタリング読書会20120220
【CyberX読書会】リファクタリング 2012/02/06
【CyberX読書会】リファクタリング 2012/02/06
Tuiningathonにいってみた
Tuiningathonにいってみた
Kürzlich hochgeladen
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
Kürzlich hochgeladen
(8)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
memcachedとトラブルとソーシャルアプリ
1.
ソーシャルメディア、 ソーシャルアプリが育てたNoSQL技術 2011/05/17
2.
初めにすこしだけ 本セミナーは3月15日から延期になりましたが 本日開催できたことに感謝します
私は仙台に住んでいます 幸い震災時は東京にいたため、無事でした 家内が仙台の自宅にいましたが、家内も無事で、自宅の被害は少なかったです しかし震災の爪痕は今なお残っています 復興への近道は日本経済が元気になることと思っています 今日お集まりいただいた皆様とともに 日本経済を盛り上げていければと思います
3.
お前、誰よ 株式会社 CyberX
取締役兼CTO 白井 英(しらい すぐる) PHP/JavaScriptがわりと好き 仕事はインフラまわりから PHP/ActionScript3が多い 携帯のソーシャルアプリ黎明期から開発従事 Twitter: @goodoo Blog: http://ameblo.jp/goodoo
4.
ソーシャルアプリといえば?
5.
プラットフォーマーでは DeNAさん GREEさん
Mixiさん
6.
memcachedといえば?
7.
Mixiさんの運用事例が有名ですね
8.
今日お話しするのはそこまで大規模な話ではありません
9.
でも、よく陥りがちな話をしたいと思います
10.
CyberXでは携帯のソーシャルアプリを作っています 代表的アプリ「星空バータウン」(mixiモバイル)
11.
「星空バータウン」のmemcachedを切り口とした運用事例・トラブル事例の話をします
12.
Agenda 規模の話 弊社アプリのサーバ構成
memcachedのおさらい 弊社CyberXの運用事例 弊社CyberXのトラブル事例 キャッシュの考え方
13.
規模 超大規模(Google/Facebookクラス) Google
サーバ台数100万台以上 Facebook サーバ台数6万台以上 大規模(プラットフォーマクラス) DeNA、Gree、Mixi サーバ台数数千台 数十~数百億PV/Day
14.
「星空バータウン」の規模(1アプリ) ユーザ数約200万人 約10億PV/Month
75万(MonthlyActiveUser) ピーク時のトラフィック200Mbps サーバ台数 約50台 参考【引用元:大規模サービス技術入門】より 2009年のはてなのサービス ユーザ数100万人以上 数十億PV/month ピーク時のトラフィック430Mbps サーバ台数 500台以上
15.
ヒットするソーシャルアプリは2009年当時のはてなに近いインフラ技術が必要
16.
「星空バータウン」サーバ構成 2010/07 Web:30台 Flash合成:3台
Cache:1台 DB:4台
17.
18.
19.
memcachedの特徴 シンプルなプロトコル 基本
Get、Set 内蔵のオンメモリストレージ 速い、軽い LRU(Least Recently Used) 手軽
20.
「星空バータウン」の運用事例 CyberXのソーシャルアプリはPHPで構築 CakePHPにて実装
PHPのセッション共有にmemcachedを使用 実はPHPのファイルでのセッション管理よりmemcachedのセッション管理のほうが負荷が低い ⇒ FileI/O > memory R/W
21.
え?これじゃないの? 引用元:「memcachedを知り尽くす »
第1回 memcachedの基本」 http://gihyo.jp/dev/feature/01/memcached/0001
22.
「星空バータウン」の運用事例 DBのデータを見に行ってもデータがDBサーバのメモリに乗っているのであれば、十分なレスポンスを返す innodbは思ったより早い
memcachedにSQLの結果をキャッシュさせた別アプリもあるがさほどメリットがなかった むしろmemcachedとして管理するサーバの台数が増え管理コストは増大
23.
memcachedのトラブル
24.
といえば
25.
2010/08/10mixi大規模障害
26.
mixi大規模障害おさらい memcachedの接続限界数に達した時に発生する不具合 接続限界数に達したのちクライアントの切断処理後、新規接続を受け付ける時に、排他制御が崩れる瞬間あり
memcachedが落ちる 詳しくは、mixiさんのengineers_blogを参照 http://alpha.mixi.co.jp/blog/?p=2211
27.
mixi大規模障害の教訓 memcachedを運用する場合には -c
による接続数の制限はできるだけ大きくする もちろん、CPU/Load/Memory/ cache hit/response timeなどをきちんと監視
28.
いっぽうその頃弊社では・・・・
29.
「教授(※)! セッションデータがドロップされています!!!」 ※ 私のことです
30.
memcachedでトラブル発生
31.
「星空バータウン」ちょっと恥かしいトラブル事例 セッション管理用のmemcachedサーバにアクセスが集中 なぜかパケットがドロップされはじめる
!!!! 次のようなエラーメッセージが・・・・ orz ip_coontrack: maximum limit of 65535 entries exceeded
32.
いいわけ memcachedサーバもグローバルIP接続可能なため、iptablesを動作させていた そのため/proc/net/ip_conntrackにパケット情報を記録
/proc/sys/net/ipv4/ip_conntrack_maxの上限に達してた・・・ ⇒ip_conntrack_maxを2,621,400へ引き上げ
33.
3か月後・・・トラブル再び
34.
「教授(※) !ラック間のトラフィックが通常の3倍です!!!」 ※ 私のことです
35.
「105MBpsだと・・・・」
36.
ラック間通信の帯域圧迫!
37.
「すいません、他にもラック間通信するアプリあるんですけど・・・」
38.
memcachedサーバを追加、分散 トラフィックが特定のラックに集中するのを分散 他のアプリに影響がでるのを回避
39.
弊社トラブルの教訓 当たり前のことをちゃんとやろう Networkまわりのパラメータチューニング
特にiptablesを動かしているなら注意 特定のサーバに処理が集中するのはリスクだよね
40.
弊社おまけのトラブル
41.
TokyoCabinet 64GBの壁事件 FlashデータのキャッシュとしてTokyoTyrant
+ TokyoCabinetを使用 データ量が日に日に増加 データ容量が64GBを超えたその日・・・・
42.
「教授(※) !Flashのキャッシュ書き込みに失敗します!」 ※ 私のことです
43.
TokyoCabinetのHDBTLARGEオプション 64bit環境で容量64GB以上のTokyoCabinetのデータファイルを扱うには「HDBTLARGE」オプションを指定する必要がある! #opts=l
44.
マニュアルよめ(ry
45.
トラブルの教訓
46.
当たり前のことをちゃんとやろう 大事なことなので2回いいました
47.
最後にNoSQL的観点から弊社のキャッシュの考え方まとめ
48.
NoSQLとDBのすみわけ DBは最終砦 ここがボトルネックにならないように色々な策を打つ
とはいえDBもデータがメモリに乗る量なら高速なレスポンスを返す
49.
NoSQLの出番は? 最悪データがロストしてもいいところ セッションデータ
トランザクションどうしよう あくまでキャッシュとして割り切ってつかう! ロールバックできなくてもユーザが不利益を被らない処理に利用 ログイン判定のフラグ管理など 一番正しいデータはDB!
50.
まとめ
51.
まとめ ヒットするソーシャルアプリの規模は中~大規模といえる データ量を意識したサーバ構成、ネットワーク構成を
memcachedといえど正しく設定、常に監視 設定値、オプションに注意 NoSQLは、弊社ではキャッシュに割り切って使用
52.
ご清聴ありがとうございました
Jetzt herunterladen