SlideShare a Scribd company logo
MogileFS の利用と高速化 ふしはらかん @MobileFactory
MogileFS  おさらい 分散ファイル管理システム ファイルを複数のサーバに分散して保存 登録・参照は専用の Client を使う Web 経由でのファイル参照は Perlbal を使うことで効率よく行なえる
MogileFS  おさらい2 Client Tracker DB Storage Node Storage Node Storage Node キー名とファイル 保存先を記録 ファイルを保存 ファイル保存
MogileFS  おさらい2 Client Tracker DB Storage Node Storage Node Storage Node   キー名 保存先を検索 ファイル参照   保存先を返す   ファイルを取得
MogileFS  おさらい3 Perlbal Tracker DB Storage Node Storage Node Storage Node 保存先を検索 ファイル参照2 A pp キー名 保存先一覧 データ取得
X-REPROXY-URL このヘッダを指定すると、指定した URL から Perlbal がデータを取得してきて返してくれる URL は「 」(半角スペース)で複数指定可能 まさに Mogile のための機能
高速化その1 URLをキャッシュ Perlbal Tracker DB Storage Node Storage Node Storage Node 保存先を検索 A pp キー名 保存先一覧 データ取得 これをキャッシュ
URLがキャッシュされた状態 Perlbal Tracker DB Storage Node Storage Node Storage Node A pp データ取得 URL
この状態での問題点 そもそもAppサーバで処理するのはコストが大きい 無駄な処理が多い プラグイン等の呼び出し Etc…
高速化その 2   X-REPROXY-CACHE-FOR Perlbal Tracker DB Storage Node Storage Node Storage Node 保存先を検索 A pp キー名 保存先一覧 データ取得 X-REPROXY-CACHE-FOR を送信
X-REPROXY-CACHE-FOR Perlbal で REPROXY-URL をキャッシュ perlbal.conf で以下の設定が必要   SET reproxy_cache_maxsize = xxx 以下の書式で指定する X-REPROXY-CACHE-FOR: 3600; Content-Type キャッシュの維持期間と、 URL 以外にキャッシュするヘッダを指定
X-REPROXY-CACHE-FOR のキャッシュ有効時 Perlbal Tracker DB Storage Node Storage Node Storage Node A pp データ取得
まとめ Mogile で運用していてダウンロード数をカウントしないもの(アートワーク等)に非常に有効 アプリケーションサーバの負荷を大きく下げられる ヘッダの指定法を間違うと実機で画像が出なくなるので注意

More Related Content

What's hot (20)

おさらいActive directory 130330
おさらいActive directory 130330おさらいActive directory 130330
おさらいActive directory 130330
wintechq
 
Active Directoryドメインを作ってみよう ~フォレストに新しいツリーのドメインを追加~
Active Directoryドメインを作ってみよう ~フォレストに新しいツリーのドメインを追加~Active Directoryドメインを作ってみよう ~フォレストに新しいツリーのドメインを追加~
Active Directoryドメインを作ってみよう ~フォレストに新しいツリーのドメインを追加~
Michio Koyama
 
今さら聞けない!Active Directoryドメインサービス入門
今さら聞けない!Active Directoryドメインサービス入門今さら聞けない!Active Directoryドメインサービス入門
今さら聞けない!Active Directoryドメインサービス入門
Trainocate Japan, Ltd.
 
丸の内MongoDB勉強会#20LT 2.8のストレージエンジン動かしてみました
丸の内MongoDB勉強会#20LT 2.8のストレージエンジン動かしてみました丸の内MongoDB勉強会#20LT 2.8のストレージエンジン動かしてみました
丸の内MongoDB勉強会#20LT 2.8のストレージエンジン動かしてみました
Ryuji Tamagawa
 
WordPress アジュール部 ハンズオン
WordPress アジュール部 ハンズオンWordPress アジュール部 ハンズオン
WordPress アジュール部 ハンズオン
Masaki Takeda
 
Enterprise Manager 3.0
Enterprise Manager 3.0Enterprise Manager 3.0
Enterprise Manager 3.0
Yuji Fujita
 
SQL Server 2016 :Managed backup to Azure
SQL Server 2016 :Managed backup to AzureSQL Server 2016 :Managed backup to Azure
SQL Server 2016 :Managed backup to Azure
貴仁 大和屋
 
ぼくの考えた最強のpipeline構成
ぼくの考えた最強のpipeline構成ぼくの考えた最強のpipeline構成
ぼくの考えた最強のpipeline構成
Naoto Nishizono
 
URIやTEXTをBEAMするアプリを作ったよ!
URIやTEXTをBEAMするアプリを作ったよ!URIやTEXTをBEAMするアプリを作ったよ!
URIやTEXTをBEAMするアプリを作ったよ!
treby
 
ロリポップと簡単インストールについて|ゼロから始めるWordPress勉強会
ロリポップと簡単インストールについて|ゼロから始めるWordPress勉強会ロリポップと簡単インストールについて|ゼロから始めるWordPress勉強会
ロリポップと簡単インストールについて|ゼロから始めるWordPress勉強会
Yoshinori Kobayashi
 
New configurationoferogamescaperev3
New configurationoferogamescaperev3New configurationoferogamescaperev3
New configurationoferogamescaperev3
hiroin0
 
新生Lagopus2017(仮称)
新生Lagopus2017(仮称)新生Lagopus2017(仮称)
新生Lagopus2017(仮称)
Masaru Oki
 
データベースのお話
データベースのお話データベースのお話
データベースのお話
Hidekazu Tanaka
 
Hatena's Infrastructure from the beginning
Hatena's Infrastructure from the beginningHatena's Infrastructure from the beginning
Hatena's Infrastructure from the beginning
Shinji Tanaka
 
Windows Azure Storage:Best Practices and Internals
Windows Azure Storage:Best Practices and InternalsWindows Azure Storage:Best Practices and Internals
Windows Azure Storage:Best Practices and Internals
Takekazu Omi
 
Mongo db勉強会
Mongo db勉強会Mongo db勉強会
Mongo db勉強会
otmb
 
New configurationoferogamescaperev2
New configurationoferogamescaperev2New configurationoferogamescaperev2
New configurationoferogamescaperev2
hiroin0
 
Cognos reportauthoring d3_activereport
Cognos reportauthoring d3_activereportCognos reportauthoring d3_activereport
Cognos reportauthoring d3_activereport
Shinsuke Yamamoto
 
おさらいActive directory 130330
おさらいActive directory 130330おさらいActive directory 130330
おさらいActive directory 130330
wintechq
 
Active Directoryドメインを作ってみよう ~フォレストに新しいツリーのドメインを追加~
Active Directoryドメインを作ってみよう ~フォレストに新しいツリーのドメインを追加~Active Directoryドメインを作ってみよう ~フォレストに新しいツリーのドメインを追加~
Active Directoryドメインを作ってみよう ~フォレストに新しいツリーのドメインを追加~
Michio Koyama
 
今さら聞けない!Active Directoryドメインサービス入門
今さら聞けない!Active Directoryドメインサービス入門今さら聞けない!Active Directoryドメインサービス入門
今さら聞けない!Active Directoryドメインサービス入門
Trainocate Japan, Ltd.
 
丸の内MongoDB勉強会#20LT 2.8のストレージエンジン動かしてみました
丸の内MongoDB勉強会#20LT 2.8のストレージエンジン動かしてみました丸の内MongoDB勉強会#20LT 2.8のストレージエンジン動かしてみました
丸の内MongoDB勉強会#20LT 2.8のストレージエンジン動かしてみました
Ryuji Tamagawa
 
WordPress アジュール部 ハンズオン
WordPress アジュール部 ハンズオンWordPress アジュール部 ハンズオン
WordPress アジュール部 ハンズオン
Masaki Takeda
 
Enterprise Manager 3.0
Enterprise Manager 3.0Enterprise Manager 3.0
Enterprise Manager 3.0
Yuji Fujita
 
SQL Server 2016 :Managed backup to Azure
SQL Server 2016 :Managed backup to AzureSQL Server 2016 :Managed backup to Azure
SQL Server 2016 :Managed backup to Azure
貴仁 大和屋
 
ぼくの考えた最強のpipeline構成
ぼくの考えた最強のpipeline構成ぼくの考えた最強のpipeline構成
ぼくの考えた最強のpipeline構成
Naoto Nishizono
 
URIやTEXTをBEAMするアプリを作ったよ!
URIやTEXTをBEAMするアプリを作ったよ!URIやTEXTをBEAMするアプリを作ったよ!
URIやTEXTをBEAMするアプリを作ったよ!
treby
 
ロリポップと簡単インストールについて|ゼロから始めるWordPress勉強会
ロリポップと簡単インストールについて|ゼロから始めるWordPress勉強会ロリポップと簡単インストールについて|ゼロから始めるWordPress勉強会
ロリポップと簡単インストールについて|ゼロから始めるWordPress勉強会
Yoshinori Kobayashi
 
New configurationoferogamescaperev3
New configurationoferogamescaperev3New configurationoferogamescaperev3
New configurationoferogamescaperev3
hiroin0
 
新生Lagopus2017(仮称)
新生Lagopus2017(仮称)新生Lagopus2017(仮称)
新生Lagopus2017(仮称)
Masaru Oki
 
データベースのお話
データベースのお話データベースのお話
データベースのお話
Hidekazu Tanaka
 
Hatena's Infrastructure from the beginning
Hatena's Infrastructure from the beginningHatena's Infrastructure from the beginning
Hatena's Infrastructure from the beginning
Shinji Tanaka
 
Windows Azure Storage:Best Practices and Internals
Windows Azure Storage:Best Practices and InternalsWindows Azure Storage:Best Practices and Internals
Windows Azure Storage:Best Practices and Internals
Takekazu Omi
 
Mongo db勉強会
Mongo db勉強会Mongo db勉強会
Mongo db勉強会
otmb
 
New configurationoferogamescaperev2
New configurationoferogamescaperev2New configurationoferogamescaperev2
New configurationoferogamescaperev2
hiroin0
 
Cognos reportauthoring d3_activereport
Cognos reportauthoring d3_activereportCognos reportauthoring d3_activereport
Cognos reportauthoring d3_activereport
Shinsuke Yamamoto
 

Similar to MogileFSの利用と高速化 (19)

最近、僕がハマったFuelPHPの紹介
最近、僕がハマったFuelPHPの紹介最近、僕がハマったFuelPHPの紹介
最近、僕がハマったFuelPHPの紹介
Naoto Mawatari
 
Restful Web Service Ch2
Restful Web Service Ch2Restful Web Service Ch2
Restful Web Service Ch2
kunit
 
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
Amazon Web Services Japan
 
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)
Akio Katayama
 
10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
 10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya 10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
kenjis
 
File API: Writer & Directories and System
File API: Writer & Directories and SystemFile API: Writer & Directories and System
File API: Writer & Directories and System
Taku AMANO
 
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
kenjis
 
Railsの運用について
Railsの運用についてRailsの運用について
Railsの運用について
Yuuki Namikawa
 
Comparing GlusterFS Swift API to Native Swift
Comparing GlusterFS Swift API to Native SwiftComparing GlusterFS Swift API to Native Swift
Comparing GlusterFS Swift API to Native Swift
Etsuji Nakai
 
『RESTful Web サービス』読書会 第4回 9章 説明資料
『RESTful Web サービス』読書会 第4回 9章 説明資料『RESTful Web サービス』読書会 第4回 9章 説明資料
『RESTful Web サービス』読書会 第4回 9章 説明資料
Siena. N
 
Silverlight 5でぶり返すWPF不要論
Silverlight 5でぶり返すWPF不要論Silverlight 5でぶり返すWPF不要論
Silverlight 5でぶり返すWPF不要論
Yuya Yamaki
 
SQL Server 入門
SQL Server 入門SQL Server 入門
SQL Server 入門
Tsuyoshi Kitagawa
 
Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012
Akio Katayama
 
10分でわかるFuelPHP @ 2011/12
10分でわかるFuelPHP @ 2011/1210分でわかるFuelPHP @ 2011/12
10分でわかるFuelPHP @ 2011/12
kenjis
 
Oci file storage service deep dive 20181001 ss
Oci file storage service deep dive 20181001 ssOci file storage service deep dive 20181001 ss
Oci file storage service deep dive 20181001 ss
Kenichi Sonoda
 
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
Insight Technology, Inc.
 
最近、僕がハマったFuelPHPの紹介
最近、僕がハマったFuelPHPの紹介最近、僕がハマったFuelPHPの紹介
最近、僕がハマったFuelPHPの紹介
Naoto Mawatari
 
Restful Web Service Ch2
Restful Web Service Ch2Restful Web Service Ch2
Restful Web Service Ch2
kunit
 
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
Amazon Web Services Japan
 
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)
Akio Katayama
 
10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
 10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya 10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
kenjis
 
File API: Writer & Directories and System
File API: Writer & Directories and SystemFile API: Writer & Directories and System
File API: Writer & Directories and System
Taku AMANO
 
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
kenjis
 
Railsの運用について
Railsの運用についてRailsの運用について
Railsの運用について
Yuuki Namikawa
 
Comparing GlusterFS Swift API to Native Swift
Comparing GlusterFS Swift API to Native SwiftComparing GlusterFS Swift API to Native Swift
Comparing GlusterFS Swift API to Native Swift
Etsuji Nakai
 
『RESTful Web サービス』読書会 第4回 9章 説明資料
『RESTful Web サービス』読書会 第4回 9章 説明資料『RESTful Web サービス』読書会 第4回 9章 説明資料
『RESTful Web サービス』読書会 第4回 9章 説明資料
Siena. N
 
Silverlight 5でぶり返すWPF不要論
Silverlight 5でぶり返すWPF不要論Silverlight 5でぶり返すWPF不要論
Silverlight 5でぶり返すWPF不要論
Yuya Yamaki
 
Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012
Akio Katayama
 
10分でわかるFuelPHP @ 2011/12
10分でわかるFuelPHP @ 2011/1210分でわかるFuelPHP @ 2011/12
10分でわかるFuelPHP @ 2011/12
kenjis
 
Oci file storage service deep dive 20181001 ss
Oci file storage service deep dive 20181001 ssOci file storage service deep dive 20181001 ss
Oci file storage service deep dive 20181001 ss
Kenichi Sonoda
 
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
Insight Technology, Inc.
 

More from kan (7)

自己紹介
自己紹介自己紹介
自己紹介
kan
 
目指せ、テストカバレッジ100%
目指せ、テストカバレッジ100%目指せ、テストカバレッジ100%
目指せ、テストカバレッジ100%
kan
 
Perlで「変なもの」を作ってみた
Perlで「変なもの」を作ってみたPerlで「変なもの」を作ってみた
Perlで「変なもの」を作ってみた
kan
 
炊込みご飯の話
炊込みご飯の話炊込みご飯の話
炊込みご飯の話
kan
 
Prettyfs
PrettyfsPrettyfs
Prettyfs
kan
 
Xircd Yapcasia2008
Xircd Yapcasia2008Xircd Yapcasia2008
Xircd Yapcasia2008
kan
 
イントラの中のWiki
イントラの中のWikiイントラの中のWiki
イントラの中のWiki
kan
 
自己紹介
自己紹介自己紹介
自己紹介
kan
 
目指せ、テストカバレッジ100%
目指せ、テストカバレッジ100%目指せ、テストカバレッジ100%
目指せ、テストカバレッジ100%
kan
 
Perlで「変なもの」を作ってみた
Perlで「変なもの」を作ってみたPerlで「変なもの」を作ってみた
Perlで「変なもの」を作ってみた
kan
 
炊込みご飯の話
炊込みご飯の話炊込みご飯の話
炊込みご飯の話
kan
 
Prettyfs
PrettyfsPrettyfs
Prettyfs
kan
 
Xircd Yapcasia2008
Xircd Yapcasia2008Xircd Yapcasia2008
Xircd Yapcasia2008
kan
 
イントラの中のWiki
イントラの中のWikiイントラの中のWiki
イントラの中のWiki
kan
 

MogileFSの利用と高速化