この実験の目的は、テストサイトを確認する方法クライアント、memcachedサーバを構築することです
クラスタを確認するために、セッションIDのmemcachedサーバの接続およびセッション
まず、準備作業は、memcachedサーバ(A:4.123)を行うために、2台のサーバー、1を準備し、
一台做网站服务器(B:4.124)
1、在A上安装软件: yum -y install memcached.x86_64 telnet(远程服务器测试用)
2、在B上配置安装LNMP环境
第二に、サーバーA上で動作し、
1、設定ファイル:VIMの/ etc /のsysconfig / memcachedの
PORT="11211" // 服务端口号
USER="memcached"
MAXCONN="1024" //最大连接数
CACHESIZE="64" //存储空间的大小
OPTIONS="" //可选参数配置
2、サービスを開始し、開始からの起動を設定します。
systemctl start memcached.service
systemctl enable memcached.service
3、接続、簡単な文のテスト
telnet 127.0.0.1 11211 //在shell下连接数据库
验证是否能读写:
set name 0 180 3 //新建name变量,不压缩、存活180秒、3个字符长度
123 //输入变量的内容
STORED
get name //读取name变量的值
VALUE name 0 3
123
END
4は、いくつかの簡単な文をmemcachedを:
add--新建(不覆盖掉以前的内容) set--新建 (会覆盖掉以前的内容)
append--追加(往已有的变量追加内容) flush_all--清空所有的内容
サーバーB上の第三に、操作
1、nginxのBにインストールされ、PHP、mariadb
详细安装参考我其它的实验,在上面安装软件并配置好配置文件
安装:yum -y install php-pecl-memcache.x86_64,让php文件可以连接memcached数据库
在php文件里面填上A服务器的IP地址信息和端口号:mem.php文件
<?php
$memcache=new Memcache;
$memcache->connect('192.168.4.123',11211) or die ('could not connect!! '); //连接数据库
$memcache->set('key', 'test'); //写入数据
$get_values=$memcache->get('key'); //读取数据
echo $get_values; //在页面上显示
?>
2.サーバー上の検証:http://192.168.4.124/mem.phpは、「テスト」のうち、それは検証成功です
セッションの4、memcachedのセッション
1、2台のサーバーのJava + Tomcatの(2.100および2.200)を調製するために//私の他の実験を参照することができます
准备一台代理服务器,用nginx来做代理,我这里用服务器A来做代理,
在上面安装nginx,并配置web集群,用真机做客户端来访问。
2、SIDセッション:ユーザーアカウント、パスワード、履歴にアクセス。
cookie:存放id号 ,下次直接登陆,不需要输入用户名和密码
図3に示すように、テストページが2の下で、既定のWebサイトのルートディレクトリに置かれた:なtest.jsp、クライアントのテストは、異なるIDを取得します
<html>
<body bgcolor="red">
<center>
<%String s = session.getId();%>
<%=s%>
<h1>tomcatA </h1>
</center>
</body>
</html>
2.100: E8912319C717E184712FDF56F428176A tomcatA
2.200: 9C842947128B1DDE593E5B30D425E2A6 tomcatB
从上面可以看到,得到不同的ID号,如何解决这问题呢,
让tomcat读写用户信息都在memcached上
以下の設定を追加、vimの/usr/local/tomcat/conf/context.xml:4、設定ファイルを変更します
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="mem1:192.168.2.123:11211"
requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.JavaSerializationTranscoderFactory"/>
把上面的地址改成memcached的地址,我这里用的IP是192.168.2.123(A)
5.確認しますhttp://www.test.com/test.jsp
得到的结果是:
D3866D1BC10489BC58961E3732D63863-mem1 tomcatB
D3866D1BC10489BC58961E3732D63863-mem1 tomcatA
可以看到,在上面的验证中,虽然服务器换了,但是其ID号是没变的