搭建java編譯環境

搭建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

clip_image002

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

clip_image004

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!

clip_image006

二、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

clip_image008

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

clip_image010

訪問.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

clip_image012

clip_image014解釋:當訪問.jsp 時 訪問負載均衡組 yang指向upstream yang;

clip_image015server1.server2;輪巡。

jsp jsp

clip_image016clip_image017 T1 T2

M1 M2

Nginx 通過jsp訪問兩個處理服務器 同時將數據交叉備份到m1 m2.(數據不會丟失)

如果沒有後端memcached 當T1掛掉 切換到T2 之前在T1的數據就會丟失

在兩臺虛擬機上安裝 memcached /etc/init.d/memcached start

free -m 查看內存信息

clip_image019

面試問 當前可用的內存空間 要看應用的使用機制,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

(兩個虛擬機都配置)

<%@ page contentType="text/html; charset=GBK" %>

<%@ page import="java.util.*" %>

<html><head><title>Cluster App Test</title></head>

<body>

Server Info:

<%

out.println(request.getLocalAddr() + " : " + request.getLocalPort()+"<br>");%>

<%

out.println("<br> ID " + session.getId()+"<br>");

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>

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 時添加

clip_image021

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)

在最後加上

<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"

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)

在最後加上

<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"

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

clip_image023

有這句話 就是對的。

測試:firefox訪問172.25.38.6 輸入數據,關掉正在運行的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章