[分散負荷分散の例] Rubyサービスの移行、mongrelマルチサーバー、lighttpdプロキシの負荷分散

データベース移行の一般的なコマンド:
mysqldump -uroot -pt --default-character-set = utf8 -d *** _ development> create _ *** _ development.sql
mysqldump -uroot -pt --quick --no-create-info-拡張挿入--default-character-set = latin1 *** _ development> data _ ***
_development.sqlまたはmysqldump-uroot --all *** _ development> *** _ development_dump.sql
scp -P ***-v data _ *** _ development.sql *** @ *** :/ home / *** //ローカルファイルデータ_ *** _192.168.1.1からリモートコピーdevelopment.sql / home / username / vsftp .conf
will確認のためにyesを入力してから、パスワードを入力するように求められます
scp -P *** -v create _ *** _ development.sql *** @ ***:/ home / ***

mysql -uroot -p *** _ development <create _ ** * _development.sql
mysql -uroot -p *** _ development <data _ *** _ development.sql

iconv -c -f latin1 -t gb2312 data _ *** _ development.sql> data _ *** _developmentGB2312.sql

開始:
#***。114Webサイト部門のテストサーバーから***。119cd
/ home / *** / webapp / ***の新しいサーバーへの移行
apt- getinstall rails
apt-get installルビーは、
apt-getをlighttpdをインストール#To
インストール
宝石は= *** -vインストールすると、レール#To
インストール
宝石がインストールrchardet
須藤はapt-getを***ルビーインストール- devの
apt-getの雑種インストール#External
、これらのサービスにアクセスできるネットワークIPが背後-Nパラメータは、set ipから始まり、3010、3011、3012まで増加する、開始されたプロセスの数です。
#-cは、railsプロジェクトのルートディレクトリ、本番
環境モード、開発開発デバッグモードを表します。mongrel_railscluster:: configure -e production -p 3010 -N 3 -c / Home / *** / *** / webapp / *** / -a 0.0.0.0 --user *** *** --group
#または
mongrel_rails cluster :: configure -e development -p 3010 --N 3 -c / home / *** / *** / webapp / *** / -a 0.0.0.0 --user *** --group ***#
ローカルアクセスのみ、ローカルプロキシ経由でアクセスできます
mongrel_rails cluster :: configure -e production -p 3010 -N 3 -c / home / *** / webapp / *** / -a 127.0.0.1 --user *** --group ***
generate config / mongrel_cluster .yml
#が開始
mongrel_railsクラスタ::再起動
#ここ-p3010でRubyスクリプト/サーバーWEBrickに-d WEBrickに同様の機能を雑種

プロキシサーバー#のconfigure
のsudo apt-getのはlighttpdのインストール
VI /etc/lighttpd/lighttpd.conf
(次のように改正#をMod_proxy、mod_alias、mod_rewriteはすべて必須です)
server.modules =( "mod_proxy"、
            "mod_access"、
            "mod_alias"、
            "mod_accesslog"、
            "mod_compress"、
            "mod_rewrite"、
------------ ----------
##ポートにバインドします(デフォルト:80)
#hereまたは必要なポートに変更
#server.port = 80
----------------------
proxy.debug = 0
#proxy.balance = "fair"最初のものがいっぱいで、次に次の1つのサーバー

#proxy.balance = "hash" URLはサーバーに固定されています
proxy.balance = "round-robin"サーバーの応答が更新されるたび
proxy.server =( "/" =>

( "host" => "127.0 .0.1 "、" port "=> 8888)


$ HTTP [" host "] ==" ***。***。com "{         proxy.balance =" round-robin "         proxy.server =(" / "=>(             (" host "=>" 127.0.0.1 "、" port "=> 3010)、             (" host "=>" 127.0.0.1 "、" port "=> 3011)、             (" host "=> "127.0.0.1"、 "ポート" =>3012))) ---------------------- #このクラスタセットは、上記mongrel_railsによって開始されたクラスタに対応/etc/init.d/lighttpd再起動ルビープロジェクトのルートディレクトリ次のconfig / environment / production.rb次のように変更します    (キャッシュを設定する必要はありません)。











config.action_controller.perform_caching = false config.action_view.cache_template_loading = false

これまでのところ、移行の展開は完了しています

分散処理の図を以下に添付します。

1

おすすめ

転載: blog.csdn.net/jrckkyy/article/details/5432483