搭建java编译环境

一、java编译环境

1.准备工作:

下载 jdk-7u79-linux-x64.tar.gz 压缩包

解压 tar zxf jdk-7u79-linux-x64.tar.gz -C /usr/local/

在/usr/local/ 下 ln -s jdk1.7.0_79/ java (方便更新软件,更新后只要重新软链接就好)

2.修改环境变量

vim /etc/profile

java编译环境需要工具集 java编译环境配置_nginx

source /etc/profile (刷新文件)

echo $PATH 查看环境变量

[root@server6 java]# echo $JAVA_HOME

/usr/local/java

[root@server6 java]# echo $CLASSPATH

.:/usr/local/java/lib:/usr/local/java/jre/lib

[root@server6 java]# echo $PATH

/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/java/bin

3.测试

写一个java程序:

vim test.java

java编译环境需要工具集 java编译环境配置_java_02

javac test.java (编译生成.class 文件)

java test

[root@server6 ~]# javac test.java

[root@server6 ~]# ls

anaconda-ks.cfg jdk-7u79-linux-x64.tar.gz

apache-tomcat-7.0.37.tar.gz test.class

install.log test.java

install.log.syslog

[root@server6 ~]# java test

Hello world!

java编译环境需要工具集 java编译环境配置_java编译环境_03

二、jsp的安装支持

1.准备工作

下载 jdk-7u79-linux-x64.tar.gz

解压 tar zxf jdk-7u79-linux-x64.tar.gz -C /usr/local/

在/usr/local/ 下 ln -s apache-tomcat-7.0.37/ tomcat (软链接到 tomcat)

2.使用

默认发布目录:/usr/local/tomcat/webapps/ROOT

开启jsp:在/usr/local/tomcat/bin 下 执行 ./startup.sh

查看jsp的监听端口:netstat -antlp 是8080端口。

3.测试

Firefox中访问172.25.15.1:8080 可以访问到tomcat 默认发布页面

自己编写 tomcat发布页面:

在/usr/local/tomcat/webapps/ROOT 下编写文件 test.jsp

java编译环境需要工具集 java编译环境配置_java编译环境_04

Firefox中访问172.25.38.6:8080/test.jsp 即可

4.配置nginx 分别处理php jsp动态页面

访问 172.25.15.1/test.jsp 即可访问 jsp页面

vim /usr/local/lnmp/nginx/conf/nginx.conf

java编译环境需要工具集 java编译环境配置_java_05

访问.jsp文件请求是 交给tomcat去处理

5.部署tomcat集群

在另一台虚拟机上配置java jsp 与第一台相同

可以直接cp 第一台/usr/local/ java tomcat 到第二台的相同位置

第二台虚拟机的环境变量也要改变,打开tomcat。

环境说明:server1:nginx tomcat

:server2:tomcat (两台主机tomcat做负载均衡)

修改nginx的配置文件:/usr/local/lnmp/nginx/conf/nginx.conf

java编译环境需要工具集 java编译环境配置_nginx_06

java编译环境需要工具集 java编译环境配置_java_07

解释:当访问.jsp 时 访问负载均衡组 yang指向upstream yang;

java编译环境需要工具集 java编译环境配置_java编译环境需要工具集_08

server1.server2;轮巡。

jsp jsp

java编译环境需要工具集 java编译环境配置_nginx_09

java编译环境需要工具集 java编译环境配置_nginx_10

T1 T2

M1 M2

Nginx 通过jsp访问两个处理服务器 同时将数据交叉备份到m1 m2.(数据不会丢失)

如果没有后端memcached 当T1挂掉 切换到T2 之前在T1的数据就会丢失

在两台虚拟机上安装 memcached /etc/init.d/memcached start

free -m 查看内存信息

java编译环境需要工具集 java编译环境配置_java编译环境_11

面试问 当前可用的内存空间 要看应用的使用机制,cache加buffers加free是可用内存,cached 会涉及应用占用,如果是分享机制,则可加上cache 如果是应用独占,不可加。

查看memcached yum install telnet -y

Telnet localhost 11211 (memcached 默认开启11211端口)
stats
add name 0 0 6 (0标示位 0超时时间 6名字的字节数)
get name
delete name
在/usr/local/tomcat/webapps/ROOT 下编写文件 test.jsp
(两个虚拟机都配置)
Cluster App Test  
Server Info:
out.println(request.getLocalAddr() + " : " + request.getLocalPort()+"
");%>out.println("
 ID " + session.getId()+"
");String dataName = request.getParameter("dataName");
if (dataName != null && dataName.length() > 0) {
String dataValue = request.getParameter("dataValue");
session.setAttribute(dataName, dataValue);
}
out.print("Session list");
Enumeration e = session.getAttributeNames();
while (e.hasMoreElements()) {
String name = (String)e.nextElement();
String value = session.getAttribute(name).toString();
out.println( name + " = " + value+"
");System.out.println( name + " = " + value);
}
%>
name:
key:

6.sticky模式的nginx负载

Ip_hash 会涉及cdn的问题,因为多个客户端都访问同一个cdn但是nginx接收的是同一个cdn的ip,所以此时的ip_hash 不合理

所以使用sticky

准备工作:

下载 nginx-goodies-nginx-sticky-module-ng-c78b7dd79d0d.tar.gz

解压到/root/

用源码重新安装nginx 需要关掉nginx ./configure 时添加

java编译环境需要工具集 java编译环境配置_nginx_12

Make & make install

修改负载均衡的算法为sticky。开启nginx

把两台虚拟机的tomcat 关掉。

两台虚拟机:把提前下载好的jar包 复制到tomcat/lib

删除掉 memcached-session-manager-tc6-1.5.1.jar (如果你用的是7)

修改 tomcat/conf/context.xml(172.25.15.5)

在最后加上

memcachedNodes="n1:172.25.38.5:11211,n2:172.38.6.2:11211"
failoverNodes="n1"
requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>
修改 tomcat/conf/context.xml(172.25.15.6)
在最后加上
memcachedNodes="n1:172.25.38.5:11211,n2:172.25.38.6:11211"
failoverNodes="n2"
requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>

两边开启 tomcat

tail -f tomcat/logs/catalina.out

java编译环境需要工具集 java编译环境配置_tomcat_13

有这句话 就是对的。

测试:firefox访问172.25.38.6 输入数据,关掉正在运行的