memcache的jsp使用

上次说到了memcache的php运行,这次来说说jsp:全名为Java Server Pages,中文名叫java服务器页面统也有自带

首先配置java环境

首先安装java源码包,系统里面就有,yum就行

我这里用的是rpm安装,一般直接yum就可以了

tar zxf jdk-7u79-linux-x64.tar.gz -C /usr/local/
ln -s jdk1.7.0_79/ java
vim /etc/profile
source /etc/profile
 80 export JAVA_HOME=/usr/local/java
 81 export CALSSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
 82 export PATH=$PATH:$JAVA_HOME/bin
安装完成之后测试一下就好了

写一个java.test

  1 public class test {
  2         public static void main(String[] args)
  3         {
  4                 System.out.println("Hello World!");
  5         }
  6 }

输出hello World

javac test.java  ##javac编译,java运行 
java test

环境配置完成后就可以安装tomcat了(tomcat.apache.org) ##tomcat相当于在后端服务器提供服务的一共

tar zxf apache-tomcat-7.0.37.tar.gz -C /usr/local/
ln -s apache-tomcat-7.0.37/ tomcat
bin/startup.sh   ##这个之后就可以访问了,端口为8080
cd webapps/ROOT/
写一个test.jsp
server4 time is :<%=new java.util.Date() %>
取当前系统时间

之后将两个文件(java,tomcat)复制到另一个服务端去,修改/etc/profilre,写一个test.jsp

server2 time is :<%=new java.util.Date() %>

在nginx端修改配置文件

 25         upstream tomcat {
 26         server 172.25.36.2:8080;
 27         server 172.25.36.4:8080;
 28 }
 71         location ~ \.jsp$ {
 72             proxy_pass   http://tomcat;
 73         }

测试:在浏览器上输入http://172.25.36.1/test.jsp 就可以看到时间的切换

但是当我们要对后端的数据库写入信息的时候,你在一个后端服务器切换后信息就会清除掉,

所以要加入一个sticky模组,需要重新编译,在原有的编译命令之后添加--add-module=/root/nginx-sticky-module-ng

编译完成之后修改配置文件,按照上明的修改

 21         upstream tomcat {
 22         sticky;     ##粘置,基于cookie的调动
 23         server 172.25.36.2:8080;
 24         server 172.25.36.4:8080;
 25         }
之后修改test.jsp

String dataName = request.getParameter("dataName");
if (dataName != null && dataName.length() > 0) {
String dataValue = request.getParameter("dataValue");
session.setAttribute(dataName, dataValue);
}
out.print("<b>Session list</b>");
Enumeration e = session.getAttributeNames();
while (e.hasMoreElements()) {
String name = (String)e.nextElement();
String value = session.getAttribute(name).toString();
out.println( name + " = " + value+"<br>");
System.out.println( name + " = " + value);
}
%>
<form action="test.jsp" method="POST">
name:<input type=text size=20 name="dataName">
<br>
key:<input type=text size=20 name="dataValue">
<br>
<input type=submit>
</form>
</body>
</html>

测试:


因为nginx存在后端的健康检查,所以当某一个服务器down掉之后会自动转至另一个服务器上进行,但是有一个弊端,那就是所有提交之前的内容都不会转移,这样会影响用户体验,因此有人提出共享存储的功能,但是这会造成额外的消费,因此我们使用memcache储存m1和m2,后端服务器为t1,t2但是不能让t1和m1为在同一台主机上,因为如果主机出错t1和m1都不能保存好消息,所以我们设置为t1默认将消息发送至m2,这样如果t1所在主机挂掉,m2依然可以保存好消息,m2挂掉的话,t1本身有内存,数据依然不会丢失。

要删除一个jar包,因为这个包是由tomcat调用的memcache管理器,因为我们使用的是7版本的,所以将6的删掉

failovernode:出现故障的时候找哪一个节点


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值