16_ビルドmemcachedのサービス、memcachedをLNMP +ローカルセッション情報、PHPはPHPが共有セッションを達成するため、あります

10.10.11.10プロキシ
クライアント10.10.11.11
web1と10.10.11.12
WEB2 10.10.11.13

:プロキシ
1.构建memcachedの服务
]#yumを-yインストールmemcachedの
]#猫の/ etc /のsysconfig / memcachedの
PORT = "11211"
USER = "memcachedの"
MAXCONN = "1024"
CACHESIZE = "64"
OPTIONS = ""
]#memcachedを起動systemctl
]#はmemcachedを有効にsystemctl
#netstatの-anptu] | grepのmemcachedの
 
2.使用のtelnet访问memcachedの服务器
]#yumを-y telnetのインストール
]#telnetの10.10.11を。
1011211 ##注:0は圧縮を示していないが、データキャッシュ180は、データのバイト数が格納される時3です。
セット名0 180 3#は、変数名が名前であり、変数を定義し
、値AAA#入力変数値AAAを               
STORED
変数名のGET位取得した値を
値の名前0 3#出力
AAA
END
 
追加MYNAME 0 180 10位ニューは、MYNAMEを添加存在しない場合、エラーの存在
wwwwwwwwwwが
STORED

SETのMYNAME 0 180 [5#追加または置換変数
WWWWW
格納され

MYNAME 0 180を取り付け[3#あるいは、MYNAME場合エラーが存在しない
TTT
STORED

GET#MYNAMEが変数読む
TTTを
END

アペンドMYNAME。5 180 [#0は、可変データに付加され
OOOOO
STORED
GETのMYNAME
VALUEの0.8 MYNAME
tttooooo

削除します変数MYNAMEの#
DELETED

統計ビューのステータスを#
flush_all#すべてクリア
OKが

終了#ログ                                  
 
3.LNMP + memcachedを(web1とWEB2)
3.1をnginxの展開する(フロント)
3.2部署mariadb
]#yumを-yインストールmariadb mariadb-サーバmariadb-develの
]#mariadb開始systemctl
#] mariadb有効systemctl
]#mysqladminは-uroot -pパスワード"123456"
]#mysqlの-uroot -p123456

3.3部署PHP
]#yumをインストール-yのphpのphp-mysqlのPHP-FPMのphp-PECL-のmemcache
]#systemctl起動のphp-FPM
]#systemctl有効のphp-FPM

nginxの开启PHP
]#vimの/etc/nginx/conf.d/default.conf
...
位置/ {
        ルートを/ usr / share / nginxの/ HTML。
        index.htmlのindex.htmのindex.phpのインデックス。
    }
...
場所〜\ .phpの$ {
        ルートを/ usr / share / nginxの/ htmlの。#绝对路径
        fastcgi_pass 127.0.0.1:9000。
        index.phpのfastcgi_index;
        fastcgi_param SCRIPT_FILENAME $ $ DOCUMENT_ROOT fastcgi_script_name;
        fastcgi_paramsを含み;
    }
]#-sリロードnginxの

接続されたメモリキャッシュデータベース
] Vimの/usr/share/nginx/html/test.php#
<?PHP
$ =新しい新しいメモリキャッシュするMemcache;#作成されたオブジェクトのmemcache
$ memcache->接続('10 .10.11.10 '11211)またはダイ('できませんでし接続!! ');
$ memcache-> SET('キー''テスト「);#は、変数の定義
の$ GET_VALUESを= $ memcache-> GET( 'キー' );#は、変数の値を取得するには、
$ GET_VALUESをエコー;
?>

クライアント検出:
] Firefoxのhttp://10.10.11.12/test.php#
 
4。ローカル情報PHPのセッション
2つのnginxのスケジューラを介して負荷のバックエンドWebサーバー
のフロントnginxのサーバーの展開スケジュール
ポーリングするスケジューリングアルゴリズム
2 LNMPのためのバックエンドサーバーを
ローカルのPHPのセッション情報を参照するには展開のテストページ
 
nginxの(前)まで4.1プロキシセット
はweb1
]#エコー「web1と」> /usr/share/nginx/html/index.html
WEB2
]#エコー「WEB2は」>は/ usr /このコンテンツ共有を報告/nginx/html/index.html
4.2スケジューリング層7
]#Vimの/etc/nginx/nginx.conf
.. ..
HTTP {
.. ..
#クラスタ名の任意の(例えば、ウェブサーバ)を使用して、上流エンドサーバクラスタを定義
#クラスタサーバー特定のサーバとポートの定義を使用して
ウェブサーバ上流{
       サーバー10.10.11.12:80、
       サーバ10.10.11.13:80を;
        }
.. ..

]#Vimの/etc/nginx/conf.d/default.conf
サーバ{
        聴きます80;
        ;サーバ名www.a.com
#proxy_passウェブサーバクラスタへのユーザの要求を介して転送
        場所/ {
            HTTP proxy_pass:// Webサーバ;
        }
...
]#nginxの-sリロード

クライアントのテスト:(デフォルトのポーリング)
]#カールhttp://10.10.11.10
はweb1
]#カールhttp://10.10.11.10
WEB2
]#カールhttp://10.10.11.10
はweb1
]#カールhttp://10.10.11.10
WEB2
 
4.3の展開のテストページ(セッション)
web1とWEB2
]#のCDのPHP-memcachedを-デモ
]#cpは-a *は/ usr /報告このコンテンツ共有/ nginxの/ HTML /
]#LS
50x.htmlロイヤリティーフリーのindex.php README.md  
home.php index.htmlをlogin.phpのstyle.cssの
はweb1:(、クライアントは簡単にプロキシポーリングを参照するサーバー)
]#vimのindex.phpを- > <ボディBGCOLOR = "赤">
] Vimのhome.phpの# - > <BODY BGCOLOR = "赤">
WEB2:
]#Vimのindex.phpを- > <BODY BGCOLOR = "青">
]#vimのhome.php - > <BODY BGCOLOR = "ブルー">
実機グールクロムビュー:
http://10.10.11.10/index。 PHP(ランディング・ポーリングを表示するページを更新するF5)は
(店舗セッション情報に2台のWebサーバでスケジュールに2回)アカウントのパスワードを入力します
(F5着陸の世論調査を見るためにページを更新する):着陸後に
 
共有セッションを達成するために5. PHP
使用中図4は、PHP-FPMは、設定ファイルを変更することで、セッションのセッション共有を実装する。
のconfigure PHPのセッションを共有情報にmemcachedサーバを使用するように。
ときにクライアントアクセス二つの異なるバックエンドWebサーバー、セッション一貫した情報
3つのトポロジー、nginxの上の練習に基づいて加えて、スケジューラ・サーバーを想定するだけでなく、memcachedのデータベースの役割、およびバックエンドサーバーLNMPの両方でPHPのセッション共有セッションのリアライズを想定する必要があります。
5.1デプロイのmemcache
]#yumを-y memcachedのインストール
]#のsystemctlスタートをmemcachedを
]#memcachedを有効systemctl
#netstatの-anptu] | memcachedをGREP
バックエンドサーバーセッションLNMPシェアに配備5.2
web1とWEB2
]#のvimの/ etc / PHP-FPMを。 D / WWW。
 
効果を変更することとして、以下れる前に:
[session.save_handler]にはphp_value =ファイル
[session.save_pathは] =の/ var / libに/ PHP /セッションにはphp_value
//元のファイルを、デフォルトのセッション情報が定義され、ローカルコンピュータSessoin(デフォルトは/ var / libに/ PHP /セッションでは)
 
次のような効果変更:
[session.save_handler]にはphp_valueを= memcacheの
はphp_value [session.save_pathは] =「TCP://10.10.11.10:11211」へ
//ホストのために、memcachedを共通のサーバ上のパラメータを格納しているセッション情報を定義しますmemcacheの(なしD)
の公共memcachedサーバ(IPおよびサーバーのポート)のパラメータで定義された//パス
]#systemctl再起動PHP-FPM
 
実機グールクロムビュー:
(着陸ポーリングを表示するページを更新するF5)
HTTP:// 10.10.11.10/index.php
:PHPからログを表示するには、エラーの場合
]#のLSは/ var / log / PHP-FPM /
WWW-error.logファイルをERROR.LOG

おすすめ

転載: www.cnblogs.com/luwei0915/p/12158748.html