efn阿克说 发表于 2018-12-25 07:32:38

memcached配置过程

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。
环境:
一台公网客户ip:202.106.0.20
一台nginx代理服务器ip:192.168.1.11 公网ip:202.106.0.1
两台私网memcached服务器ip:192.168.1.111   ip:192.168.1.112
两台私网web服务器ip:192.168.1.12 动态tomcat网页   ip:192.168.1.13动态tomcat网页
需求:
1:公网客户可以通过nginx代理服务器访问公司主页www.sw.com,并实现session会话共享
2:nginx可以实现动态和静态网页分离访问不同web服务器
3:防防盗链
实现步骤:
1:web服务器上安装jdk库包和tomcat源码包,设置为开机启动
#yum -y install gcc gcc-c++ make                   //安装编译环境包
#chmod +x jdk-6u27-linux-i586.bin                //给bin包执行权限
#./jdk-6u27-linux-i586.bin//运行jdk.bin安装
#mv jdk1.6.0_27 /usr/local/jdk                         //习惯上把源码包放到/usr/local下
#vim /etc/bashrc                                             //定义java参数让系统调用
exportJRE_HOME=/usr/local/jdk                           //主目录位置
exportJAVA_BIN=/usr/local/jdk/bin                      //bin文件夹位置
exportPATH=$JRE_HOME/bin:$PATH                         //设为系统全局变量,方便调
exportCLASSPATH=.:$JRE_HOME/lib/dt.jar:$JRE_HOME/lib/tools.jar//指定工具位置
exportJRE_HOME   JAVA_BIN   PATH   CLASSPATH       //定义为系统全局变量

  # tar -zxvf apache-tomcat-6.0.32.tar.gz -C /usr/local   //解压并放到/usr/local下
  # mv /usr/local/{apache-tomcat-6.0.32,tomcat}   //重命名
# ./bin/startup.sh                                          //启动tomcat
# vim conf/tomcat-users.xml                      //访问tomcat网页根据错误提示添加用户和密码

36
37
38

# ./bin/shutdown.sh                                          //关闭tomcat
# ./bin/startup.sh                                          //启动tomcat
# vim /etc/rc.local                  //添加到开机启动脚本
/usr/local/tomcat/bin/startup.sh

2:代理服务器上安装nginx源码包程序,设置为开机启动,备份主配置文件,配置成反向代理
# useradd-M -s /sbin/nologin nginx                //添加系统用户nginx,无家目录和禁止登录
#yum -y install gcc gcc-c++ make pcrc-devel openssl-devel   //安装编译环境开发包
#mkdir /nginx                                                    //创建存放文件夹
# ./configure --prefix=/nginx \      //转换源码,指定安装目录
>--user=nginx --group=nginx                                                //指定进程属主,属组
>--with-http_stub_status_module --with-http_ssl_module;    //加载查看状态模块,ssl模块
# make&& make install                //编译安装
# vim /etc/rc.local                  //添加到开机启动脚本
/nginx/sbin/nginx

# cp -p /nginx/conf/{nginx.conf,nginx.conf.bak}//备份主配置文件
# vim /nginx/conf/nginx.conf
...
3 worker_processes1;                  //进程个数,建议和cpu核数相同
...
12 events {
13   worker_connections1024;    //每进程最大并发连接数
14 }
...
17 http {
...
20   upstream web {                  //定义web地址池组   
21   server 192.168.1.12:8080;               
22   server 192.168.1.13:8080;
23         }
...
122   server {
123         listen   80;
124         server_namewww.sw.com;
125         location / {
128            proxy_pass http://web;                      //调用web地址池
129         }
130         location ~*\.jsp$ {   //当访问结尾是jsp时,代理到192.168.1.12192.168.1.13
131            proxy_pass http://web;
132         }
133         location ~* \.(gif|png|jpg|mp3|rm|flv)$ {    //防盗链,只允许本域直接访问
134         valid_referers none blocked .sw.com;
135         if ($invalid_referer) { rewrite ^/ http://192.168.1.11/error.htm;}
136         }
137       }
...
150 }

3:缓存服务器上安装库包和memcached源码包,设置为开机启动
# tar -zxvf libevent-2.0.15-stable.tar.gz
# ./configure &&make &&make install
# vim /etc/ld.so.conf.d/libevent.conf
/usr/local/lib

# ldconfig -v|grep libevent
# tar -zxvf memcached-1.4.5.tar.gz
# ./configure &&make &&make install
# vim /etc/rc.localhost
memcached -l 192.168.1.112 -u root -d -vvv -m 100M -n 10 -f 2
# memcached -l 192.168.1.112 -u root -d -vvv -m 100M -n 10 -f 2
4:配置tomcat,使链接memcached的会话信息共享
类库:kryo-1.04.jar   kryo-serializers-0.9.jar   minlog-1.2.jar    msm-kryo-serializer-1.5.1.jar    reflectasm-1.01.jar   
管理类:memcached-2.5.jar   memcached-session-manager-1.5.1.jar   memcached-session-manager-tc6-1.5.1.jar                     # cp * /usr/local/tomcat/lib/                           //把上面的类包都复制进tomcat的lib目录
# vim /usr/local/tomcat/conf/context.xml   //编辑连接配置文件添加
...
19
20
...
//class等是定义调用类,REQUEST定义不缓存的内容,memcached指定缓存服务器地址,failover指定备用节点

# /usr/local/tomcat/bin/shutdown.sh            //重启tomcat
# /usr/local/tomcat/bin/startup.sh
   







  




页: [1]
查看完整版本: memcached配置过程