SlideShare ist ein Scribd-Unternehmen logo
1 von 7
Downloaden Sie, um offline zu lesen
http://www.sonicgarden.jp/




Railsの運用について


   TIS株式会社
  社内ベンチャーカンパニー
  「SonicGarden」
     並河 祐貴
Railsアプリのシステム構成

    よくあるWeb3階層
      リバースプロキシ/ロードバランサ
       HTTPリクエストの受付、バックエンドの適切なWeb/APサーバへ
       HTTPリクエストを委譲、静的コンテンツはリバースプロキシ自身が
       レスポンスを返すこともある

      Web/APサーバ
       フロントから渡されたHTTPリクエストを処理
       動的コンテンツの部分(リクエスト)は、CGIなど何かしらのアダプタ
       を介して、アプリケーション処理を実行

      DBサーバ




1                                http://www.sonicgarden.jp/
Web/APサーバでの振舞い

    1. HTTPリクエストを受付
    2. アダプタを介して、Rubyプログラムがアプリケー
    ション処理を実行(1プロセス)
    3. HTTPレスポンスを返す


                  アダプタ
      HTTP                      Ruby
                  (CGI等)


     1リクエストが1Rubyプロセスに割り当てられる
     規模が大きくなったら、複数のRubyプロセスで待ち受ける運用



2                                  http://www.sonicgarden.jp/
スタンダードなWeb/APサーバ
    (Apache or lighttpd or nginx) + FastCGI
      CGIプロセスを常駐させることができる、FastCGI
      導入がそれほど容易ではなく、エラー出力が弱い


    mongrel, Apache + mongrel_cluster
      Ruby + C(拡張ライブラリ)で実装されたサーバで、導入が容易
      2007~2008年頃のデファクトスタンダード
      メモリリーク、メモリの効率利用に課題


    Apache + Passenger
      PassengerはApacheモジュールとして振舞うため、導入が容易
      最近のデファクトスタンダード



3                                        http://www.sonicgarden.jp/
Passenger(APサーバ)のアーキテクチャ




    Spawn ServerはRails F/W
    とアプリのコードをキャッシュ
    初回のプロセス起動は遅いが、2
    回目以降はメモリキャッシュを利用
    し、高速に起動できる
      メモリの効率利用




4                              http://www.sonicgarden.jp/
よくある負荷分散構成(スケールアウト)
                                                     User




                                              ロードバランサ


    Web/APサーバは並列に
    セッション情報は、Railsの
                       Web/AP       Web/AP             Web/AP
    cookie store        サーバ          サーバ                サーバ

                                                               ・・・

    DB(MySQL)は、       DBサーバ     Replication                 DBサーバ
    Master-Slave構成に
                                                                ・・・
    Read、Writeで接続先を
                                 Backup
    切り替え


                                          Storage

5                                                   http://www.sonicgarden.jp/
その他

    デプロイ
     ツールを利用した効率的なソースコードの配置
     プロセスの再起動が必要

    監視
     HTTPレスポンス監視
     プロセス監視




6                            http://www.sonicgarden.jp/

Weitere ähnliche Inhalte

Was ist angesagt?

恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡Aya Komuro
 
徳丸本VMに脆弱なWordPressを導入する
徳丸本VMに脆弱なWordPressを導入する徳丸本VMに脆弱なWordPressを導入する
徳丸本VMに脆弱なWordPressを導入するHiroshi Tokumaru
 
これからはじめるCoda2とSublime Text 2
これからはじめるCoda2とSublime Text 2これからはじめるCoda2とSublime Text 2
これからはじめるCoda2とSublime Text 2masaaki komori
 
XOOPS Cube Conference 2012 Developer Workshop 2
XOOPS Cube Conference 2012 Developer Workshop 2XOOPS Cube Conference 2012 Developer Workshop 2
XOOPS Cube Conference 2012 Developer Workshop 2Hikawa Kilica
 
未設定のドメインでも ELB 経由で proxy.pac を使って https で接続する方法
未設定のドメインでも ELB 経由で proxy.pac を使って https で接続する方法未設定のドメインでも ELB 経由で proxy.pac を使って https で接続する方法
未設定のドメインでも ELB 経由で proxy.pac を使って https で接続する方法Taku AMANO
 
PostgreSQL on Amazon EC2の可能性
PostgreSQL on Amazon EC2の可能性PostgreSQL on Amazon EC2の可能性
PostgreSQL on Amazon EC2の可能性Serverworks Co.,Ltd.
 
Webアプリケーションの パフォーマンス向上のコツ 概要編
 Webアプリケーションの パフォーマンス向上のコツ 概要編 Webアプリケーションの パフォーマンス向上のコツ 概要編
Webアプリケーションの パフォーマンス向上のコツ 概要編Masahiro Nagano
 
apachehereというPHPのBuiltin Serverっぽいやつをつくった
apachehereというPHPのBuiltin ServerっぽいやつをつくったapachehereというPHPのBuiltin Serverっぽいやつをつくった
apachehereというPHPのBuiltin ServerっぽいやつをつくったJunichi Ishida
 
シンプルなシステム構成フレームワークalnair
シンプルなシステム構成フレームワークalnairシンプルなシステム構成フレームワークalnair
シンプルなシステム構成フレームワークalnairNaoya Inada
 
Mod lua
Mod luaMod lua
Mod luado_aki
 
CloudCore VPS 開発者支援制度
CloudCore VPS 開発者支援制度CloudCore VPS 開発者支援制度
CloudCore VPS 開発者支援制度Koichi Shimozono
 
Re: WebServer BenchMarking
Re: WebServer BenchMarkingRe: WebServer BenchMarking
Re: WebServer BenchMarkingRyo Tomidokoro
 
Webサーバのチューニング
WebサーバのチューニングWebサーバのチューニング
WebサーバのチューニングYu Komiya
 
EWD 3トレーニングコース#3 EWD 3 モジュールの概要
EWD 3トレーニングコース#3 EWD 3 モジュールの概要EWD 3トレーニングコース#3 EWD 3 モジュールの概要
EWD 3トレーニングコース#3 EWD 3 モジュールの概要Kiyoshi Sawada
 
誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニング誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニングKiyokazu Kaba
 
Bloopのちょっぱやコンパイルで開発効率を上げたい
Bloopのちょっぱやコンパイルで開発効率を上げたいBloopのちょっぱやコンパイルで開発効率を上げたい
Bloopのちょっぱやコンパイルで開発効率を上げたいkeisunagawa
 
PHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバーPHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバーAtsushi Matsuo
 

Was ist angesagt? (20)

BSP改造Tips
BSP改造TipsBSP改造Tips
BSP改造Tips
 
恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡
 
徳丸本VMに脆弱なWordPressを導入する
徳丸本VMに脆弱なWordPressを導入する徳丸本VMに脆弱なWordPressを導入する
徳丸本VMに脆弱なWordPressを導入する
 
これからはじめるCoda2とSublime Text 2
これからはじめるCoda2とSublime Text 2これからはじめるCoda2とSublime Text 2
これからはじめるCoda2とSublime Text 2
 
XOOPS Cube Conference 2012 Developer Workshop 2
XOOPS Cube Conference 2012 Developer Workshop 2XOOPS Cube Conference 2012 Developer Workshop 2
XOOPS Cube Conference 2012 Developer Workshop 2
 
未設定のドメインでも ELB 経由で proxy.pac を使って https で接続する方法
未設定のドメインでも ELB 経由で proxy.pac を使って https で接続する方法未設定のドメインでも ELB 経由で proxy.pac を使って https で接続する方法
未設定のドメインでも ELB 経由で proxy.pac を使って https で接続する方法
 
PostgreSQL on Amazon EC2の可能性
PostgreSQL on Amazon EC2の可能性PostgreSQL on Amazon EC2の可能性
PostgreSQL on Amazon EC2の可能性
 
Webアプリケーションの パフォーマンス向上のコツ 概要編
 Webアプリケーションの パフォーマンス向上のコツ 概要編 Webアプリケーションの パフォーマンス向上のコツ 概要編
Webアプリケーションの パフォーマンス向上のコツ 概要編
 
apachehereというPHPのBuiltin Serverっぽいやつをつくった
apachehereというPHPのBuiltin ServerっぽいやつをつくったapachehereというPHPのBuiltin Serverっぽいやつをつくった
apachehereというPHPのBuiltin Serverっぽいやつをつくった
 
シンプルなシステム構成フレームワークalnair
シンプルなシステム構成フレームワークalnairシンプルなシステム構成フレームワークalnair
シンプルなシステム構成フレームワークalnair
 
Mod lua
Mod luaMod lua
Mod lua
 
CloudCore VPS 開発者支援制度
CloudCore VPS 開発者支援制度CloudCore VPS 開発者支援制度
CloudCore VPS 開発者支援制度
 
Re: WebServer BenchMarking
Re: WebServer BenchMarkingRe: WebServer BenchMarking
Re: WebServer BenchMarking
 
PowerShell de Azure
PowerShell de AzurePowerShell de Azure
PowerShell de Azure
 
Webサーバのチューニング
WebサーバのチューニングWebサーバのチューニング
Webサーバのチューニング
 
EWD 3トレーニングコース#3 EWD 3 モジュールの概要
EWD 3トレーニングコース#3 EWD 3 モジュールの概要EWD 3トレーニングコース#3 EWD 3 モジュールの概要
EWD 3トレーニングコース#3 EWD 3 モジュールの概要
 
誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニング誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニング
 
MHA, Murakumo & Me
MHA, Murakumo & MeMHA, Murakumo & Me
MHA, Murakumo & Me
 
Bloopのちょっぱやコンパイルで開発効率を上げたい
Bloopのちょっぱやコンパイルで開発効率を上げたいBloopのちょっぱやコンパイルで開発効率を上げたい
Bloopのちょっぱやコンパイルで開発効率を上げたい
 
PHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバーPHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバー
 

Ähnlich wie Railsの運用について

さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...さくらインターネット株式会社
 
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)Akio Katayama
 
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-publicAmazon Web Services Japan
 
Performance and Scalability of Web Service
Performance and Scalability of Web ServicePerformance and Scalability of Web Service
Performance and Scalability of Web ServiceShinji Tanaka
 
Webサーバの基礎知識【編集済み】
Webサーバの基礎知識【編集済み】Webサーバの基礎知識【編集済み】
Webサーバの基礎知識【編集済み】Kikunaga Taishi
 
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい) 泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい) Akihiro Kuwano
 
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会tama200x Kobayashi
 
PHP 5.5ネーティブキャッシュの話
PHP 5.5ネーティブキャッシュの話PHP 5.5ネーティブキャッシュの話
PHP 5.5ネーティブキャッシュの話Rui Hirokawa
 
メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3
メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3
メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3日本Javaユーザーグループ
 
Hatena's Infrastructure from the beginning
Hatena's Infrastructure from the beginningHatena's Infrastructure from the beginning
Hatena's Infrastructure from the beginningShinji Tanaka
 
JOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API Dragon
JOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API DragonJOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API Dragon
JOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API DragonNaoto Gohko
 
Jjug springセッション
Jjug springセッションJjug springセッション
Jjug springセッションYuichi Hasegawa
 
YAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web service
YAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web serviceYAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web service
YAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web serviceKazuho Oku
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Masahiro Nagano
 
Raspberry Pi 2 誤自宅サーバー移行日記
Raspberry Pi 2 誤自宅サーバー移行日記Raspberry Pi 2 誤自宅サーバー移行日記
Raspberry Pi 2 誤自宅サーバー移行日記96smcln
 
Automation tech casual_talks_1_20120717
Automation tech casual_talks_1_20120717Automation tech casual_talks_1_20120717
Automation tech casual_talks_1_20120717Makoto Haruyama
 

Ähnlich wie Railsの運用について (20)

さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
 
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)
 
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
 
PHP on Cloud
PHP on CloudPHP on Cloud
PHP on Cloud
 
Performance and Scalability of Web Service
Performance and Scalability of Web ServicePerformance and Scalability of Web Service
Performance and Scalability of Web Service
 
Webサーバの基礎知識【編集済み】
Webサーバの基礎知識【編集済み】Webサーバの基礎知識【編集済み】
Webサーバの基礎知識【編集済み】
 
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい) 泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
 
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
 
PHP 5.5ネーティブキャッシュの話
PHP 5.5ネーティブキャッシュの話PHP 5.5ネーティブキャッシュの話
PHP 5.5ネーティブキャッシュの話
 
メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3
メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3
メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3
 
VIOPS03: VMware参考資料
VIOPS03: VMware参考資料VIOPS03: VMware参考資料
VIOPS03: VMware参考資料
 
Apache Module
Apache ModuleApache Module
Apache Module
 
Hatena's Infrastructure from the beginning
Hatena's Infrastructure from the beginningHatena's Infrastructure from the beginning
Hatena's Infrastructure from the beginning
 
JOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API Dragon
JOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API DragonJOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API Dragon
JOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API Dragon
 
勉強会資料①
勉強会資料①勉強会資料①
勉強会資料①
 
Jjug springセッション
Jjug springセッションJjug springセッション
Jjug springセッション
 
YAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web service
YAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web serviceYAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web service
YAPC::Asia 2008 Tokyo - Pathtraq - building a computation-centric web service
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
 
Raspberry Pi 2 誤自宅サーバー移行日記
Raspberry Pi 2 誤自宅サーバー移行日記Raspberry Pi 2 誤自宅サーバー移行日記
Raspberry Pi 2 誤自宅サーバー移行日記
 
Automation tech casual_talks_1_20120717
Automation tech casual_talks_1_20120717Automation tech casual_talks_1_20120717
Automation tech casual_talks_1_20120717
 

Mehr von Yuuki Namikawa

bash(set)コマンドのオプション3選
bash(set)コマンドのオプション3選bash(set)コマンドのオプション3選
bash(set)コマンドのオプション3選Yuuki Namikawa
 
3分でわかる(気になれる) AWS OpsWorks
3分でわかる(気になれる) AWS OpsWorks3分でわかる(気になれる) AWS OpsWorks
3分でわかる(気になれる) AWS OpsWorksYuuki Namikawa
 
Chefを利用した運用省力化とDevOpsの取り組みについて
Chefを利用した運用省力化とDevOpsの取り組みについてChefを利用した運用省力化とDevOpsの取り組みについて
Chefを利用した運用省力化とDevOpsの取り組みについてYuuki Namikawa
 
俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)
俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)
俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)Yuuki Namikawa
 
#kuwacon Lightning Talks
#kuwacon Lightning Talks#kuwacon Lightning Talks
#kuwacon Lightning TalksYuuki Namikawa
 
Using Chef for Infrastructure Automation of Ameba Pigg
Using Chef for Infrastructure Automation of Ameba PiggUsing Chef for Infrastructure Automation of Ameba Pigg
Using Chef for Infrastructure Automation of Ameba PiggYuuki Namikawa
 
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)Yuuki Namikawa
 
サーバの構築作業や運用管理を自動化する「Chef」 (CADC研究レポート発表LT)
サーバの構築作業や運用管理を自動化する「Chef」 (CADC研究レポート発表LT)サーバの構築作業や運用管理を自動化する「Chef」 (CADC研究レポート発表LT)
サーバの構築作業や運用管理を自動化する「Chef」 (CADC研究レポート発表LT)Yuuki Namikawa
 
パブリッククラウドサービスAmazon EC2の性能検証レポート (CADC研究レポート発表会用)
パブリッククラウドサービスAmazon EC2の性能検証レポート (CADC研究レポート発表会用)パブリッククラウドサービスAmazon EC2の性能検証レポート (CADC研究レポート発表会用)
パブリッククラウドサービスAmazon EC2の性能検証レポート (CADC研究レポート発表会用)Yuuki Namikawa
 
中国のクラウドサービスについて (サイバーエージェント×クックパッド合同勉強会LT資料)
中国のクラウドサービスについて (サイバーエージェント×クックパッド合同勉強会LT資料)中国のクラウドサービスについて (サイバーエージェント×クックパッド合同勉強会LT資料)
中国のクラウドサービスについて (サイバーエージェント×クックパッド合同勉強会LT資料)Yuuki Namikawa
 
JAWS-UGサミット2011春 LT資料
JAWS-UGサミット2011春 LT資料JAWS-UGサミット2011春 LT資料
JAWS-UGサミット2011春 LT資料Yuuki Namikawa
 
Webサーバ勉強会 (160-162:?)
Webサーバ勉強会 (160-162:?)Webサーバ勉強会 (160-162:?)
Webサーバ勉強会 (160-162:?)Yuuki Namikawa
 
クラウドサービスAmazon EC2を活用した「SKIPaaS」構築事例
クラウドサービスAmazon EC2を活用した「SKIPaaS」構築事例クラウドサービスAmazon EC2を活用した「SKIPaaS」構築事例
クラウドサービスAmazon EC2を活用した「SKIPaaS」構築事例Yuuki Namikawa
 
Amazon EC2 を使ったSaaS運用事例(LT) - Tokyo Cloud Developers Meetup (20090409)
Amazon EC2 を使ったSaaS運用事例(LT) - Tokyo Cloud Developers Meetup (20090409)Amazon EC2 を使ったSaaS運用事例(LT) - Tokyo Cloud Developers Meetup (20090409)
Amazon EC2 を使ったSaaS運用事例(LT) - Tokyo Cloud Developers Meetup (20090409)Yuuki Namikawa
 
Amazon EC2を使った実践SaaS運用事例
Amazon EC2を使った実践SaaS運用事例Amazon EC2を使った実践SaaS運用事例
Amazon EC2を使った実践SaaS運用事例Yuuki Namikawa
 

Mehr von Yuuki Namikawa (15)

bash(set)コマンドのオプション3選
bash(set)コマンドのオプション3選bash(set)コマンドのオプション3選
bash(set)コマンドのオプション3選
 
3分でわかる(気になれる) AWS OpsWorks
3分でわかる(気になれる) AWS OpsWorks3分でわかる(気になれる) AWS OpsWorks
3分でわかる(気になれる) AWS OpsWorks
 
Chefを利用した運用省力化とDevOpsの取り組みについて
Chefを利用した運用省力化とDevOpsの取り組みについてChefを利用した運用省力化とDevOpsの取り組みについて
Chefを利用した運用省力化とDevOpsの取り組みについて
 
俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)
俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)
俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)
 
#kuwacon Lightning Talks
#kuwacon Lightning Talks#kuwacon Lightning Talks
#kuwacon Lightning Talks
 
Using Chef for Infrastructure Automation of Ameba Pigg
Using Chef for Infrastructure Automation of Ameba PiggUsing Chef for Infrastructure Automation of Ameba Pigg
Using Chef for Infrastructure Automation of Ameba Pigg
 
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
 
サーバの構築作業や運用管理を自動化する「Chef」 (CADC研究レポート発表LT)
サーバの構築作業や運用管理を自動化する「Chef」 (CADC研究レポート発表LT)サーバの構築作業や運用管理を自動化する「Chef」 (CADC研究レポート発表LT)
サーバの構築作業や運用管理を自動化する「Chef」 (CADC研究レポート発表LT)
 
パブリッククラウドサービスAmazon EC2の性能検証レポート (CADC研究レポート発表会用)
パブリッククラウドサービスAmazon EC2の性能検証レポート (CADC研究レポート発表会用)パブリッククラウドサービスAmazon EC2の性能検証レポート (CADC研究レポート発表会用)
パブリッククラウドサービスAmazon EC2の性能検証レポート (CADC研究レポート発表会用)
 
中国のクラウドサービスについて (サイバーエージェント×クックパッド合同勉強会LT資料)
中国のクラウドサービスについて (サイバーエージェント×クックパッド合同勉強会LT資料)中国のクラウドサービスについて (サイバーエージェント×クックパッド合同勉強会LT資料)
中国のクラウドサービスについて (サイバーエージェント×クックパッド合同勉強会LT資料)
 
JAWS-UGサミット2011春 LT資料
JAWS-UGサミット2011春 LT資料JAWS-UGサミット2011春 LT資料
JAWS-UGサミット2011春 LT資料
 
Webサーバ勉強会 (160-162:?)
Webサーバ勉強会 (160-162:?)Webサーバ勉強会 (160-162:?)
Webサーバ勉強会 (160-162:?)
 
クラウドサービスAmazon EC2を活用した「SKIPaaS」構築事例
クラウドサービスAmazon EC2を活用した「SKIPaaS」構築事例クラウドサービスAmazon EC2を活用した「SKIPaaS」構築事例
クラウドサービスAmazon EC2を活用した「SKIPaaS」構築事例
 
Amazon EC2 を使ったSaaS運用事例(LT) - Tokyo Cloud Developers Meetup (20090409)
Amazon EC2 を使ったSaaS運用事例(LT) - Tokyo Cloud Developers Meetup (20090409)Amazon EC2 を使ったSaaS運用事例(LT) - Tokyo Cloud Developers Meetup (20090409)
Amazon EC2 を使ったSaaS運用事例(LT) - Tokyo Cloud Developers Meetup (20090409)
 
Amazon EC2を使った実践SaaS運用事例
Amazon EC2を使った実践SaaS運用事例Amazon EC2を使った実践SaaS運用事例
Amazon EC2を使った実践SaaS運用事例
 

Railsの運用について

  • 1. http://www.sonicgarden.jp/ Railsの運用について TIS株式会社 社内ベンチャーカンパニー 「SonicGarden」 並河 祐貴
  • 2. Railsアプリのシステム構成 よくあるWeb3階層 リバースプロキシ/ロードバランサ HTTPリクエストの受付、バックエンドの適切なWeb/APサーバへ HTTPリクエストを委譲、静的コンテンツはリバースプロキシ自身が レスポンスを返すこともある Web/APサーバ フロントから渡されたHTTPリクエストを処理 動的コンテンツの部分(リクエスト)は、CGIなど何かしらのアダプタ を介して、アプリケーション処理を実行 DBサーバ 1 http://www.sonicgarden.jp/
  • 3. Web/APサーバでの振舞い 1. HTTPリクエストを受付 2. アダプタを介して、Rubyプログラムがアプリケー ション処理を実行(1プロセス) 3. HTTPレスポンスを返す アダプタ HTTP Ruby (CGI等) 1リクエストが1Rubyプロセスに割り当てられる 規模が大きくなったら、複数のRubyプロセスで待ち受ける運用 2 http://www.sonicgarden.jp/
  • 4. スタンダードなWeb/APサーバ (Apache or lighttpd or nginx) + FastCGI CGIプロセスを常駐させることができる、FastCGI 導入がそれほど容易ではなく、エラー出力が弱い mongrel, Apache + mongrel_cluster Ruby + C(拡張ライブラリ)で実装されたサーバで、導入が容易 2007~2008年頃のデファクトスタンダード メモリリーク、メモリの効率利用に課題 Apache + Passenger PassengerはApacheモジュールとして振舞うため、導入が容易 最近のデファクトスタンダード 3 http://www.sonicgarden.jp/
  • 5. Passenger(APサーバ)のアーキテクチャ Spawn ServerはRails F/W とアプリのコードをキャッシュ 初回のプロセス起動は遅いが、2 回目以降はメモリキャッシュを利用 し、高速に起動できる メモリの効率利用 4 http://www.sonicgarden.jp/
  • 6. よくある負荷分散構成(スケールアウト) User ロードバランサ Web/APサーバは並列に セッション情報は、Railsの Web/AP Web/AP Web/AP cookie store サーバ サーバ サーバ ・・・ DB(MySQL)は、 DBサーバ Replication DBサーバ Master-Slave構成に ・・・ Read、Writeで接続先を Backup 切り替え Storage 5 http://www.sonicgarden.jp/
  • 7. その他 デプロイ ツールを利用した効率的なソースコードの配置 プロセスの再起動が必要 監視 HTTPレスポンス監視 プロセス監視 6 http://www.sonicgarden.jp/