日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Tomcat完美實現(xiàn)在線商城應(yīng)用部署

Tomcat是一個小型的輕量級應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP程序的選擇。對于一個初學(xué)者來說,可以這樣認為,當(dāng)在一臺機器上配置好Apache 服務(wù)器,可利用它響應(yīng)對HTML 頁面的訪問請求。實際上Tomcat 部分是Apache 服務(wù)器的擴展,但它是獨立運行的,所以當(dāng)你運行tomcat 時,它實際上作為一個與Apache 獨立的進程單獨運行的。

創(chuàng)新互聯(lián)公司專注于孫吳網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供孫吳營銷型網(wǎng)站建設(shè),孫吳網(wǎng)站制作、孫吳網(wǎng)頁設(shè)計、孫吳網(wǎng)站官網(wǎng)定制、微信小程序開發(fā)服務(wù),打造孫吳網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供孫吳網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

Tomcat 很受廣大程序員的喜歡,因為它運行時占用的系統(tǒng)資源小,擴展性好,支持負載平衡與郵件服務(wù)等開發(fā)應(yīng)用系統(tǒng)常用的功能;而且它還在不斷的改進和完善中,任何一個感興趣的程序員都可以更改它或在其中加入新的功能。

環(huán)境介紹:

系統(tǒng)版本:CentOS 6.4_x86_64

mysql版本: mysql-server.x86_64 0:5.1.66-2.el6_3

Apache版本:httpd-2.2.15-26.el6

Tomcat版本:apache-tomcat-7.0.42

JDK版本: jdk-7u40-linux-x64

在線商城系統(tǒng):shopxx-3.0Beta(可下載)

拓撲展示:

安裝配置過程:

1、配置IP地址

 
 
 
 
  1. ############前端服務(wù)器[root@node ~]#:#############
  2. ifconfig eth0 172.16.18.6
  3. ifconfig eth1 192.168.18.254/24
  4. ############Tomcat A[root@node1~]#:###############
  5. ifconfig eth0 192.168.18.1/24
  6. route add default gw 192.168.18.254
  7. ############Tomcat B[root@node2~]#:################
  8. ifconfig eth0 192.168.18.2/24
  9. route add default gw 192.168.18.254

2、安裝配置后端服務(wù)器

 
 
 
 
  1. ###########TomcatA服務(wù)器:##############
  2.     ##########安裝JDK:##############
  3. [root@node1~]# rpm -ivh jdk-7u9-linux-x64.rpm
  4. [root@node1~]# vim /etc/profile.d/java.sh   #編輯執(zhí)行腳本
  5.  export JAVA_HOME=/usr/java/latest
  6.  export PATH=$JAVA_HOME/bin:$PATH
  7. [root@node1~]# . /etc/profile.d/java.sh     #讀取執(zhí)行腳本
  8. [root@node1~]# java -version                #查看安裝信息
  9. javaversion "1.7.0_09"   #版本信息
  10. Java(TM)SE Runtime Environment (build 1.7.0_09-b05)    #運行時環(huán)境的版本
  11. JavaHotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode)
  12.      #########安裝Tomcat#############
  13. [root@node1~]# tar xf apache-tomcat-7.0.42.tar.gz -C /usr/local/
  14. [root@node1~]# cd /usr/local/
  15. [root@node1local]# ln -sv apache-tomcat-7.0.42/ tomcat
  16. [root@node1tomcat]# vim /etc/profile.d/tomcat.sh     #定義啟動環(huán)境變量
  17. exportCATALINA_HOME=/usr/local/tomcat
  18. exportPATH=$CATALINA_HOME/bin:$PATH
  19. [root@node1tomcat]# . /etc/profile.d/tomcat.sh       #讀取腳本
  20. [root@node1~]# catalina.sh version   #查看安裝信息
  21. UsingCATALINA_BASE:   /usr/local/tomcat
  22. UsingCATALINA_HOME:   /usr/local/tomcat
  23. UsingCATALINA_TMPDIR: /usr/local/tomcat/temp
  24. UsingJRE_HOME:        /usr/java/latest
  25. UsingCLASSPATH:      /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
  26. Serverversion: Apache Tomcat/7.0.42
  27. Serverbuilt:   Jul 2 2013 08:57:41
  28. Servernumber:  7.0.42.0
  29. OSName:        Linux
  30. OSVersion:     2.6.32-358.el6.x86_64
  31. Architecture:   amd64
  32. JVMVersion:    1.7.0_09-b05
  33. JVMVendor:     Oracle Corporation
  34. #############啟動##################
  35. [root@node1~]# catalina.sh start
  36. ############查看啟動端口###########
  37. [root@node1~]# ss -tanl
  38. State      Recv-Q Send-Q                     Local Address:Port                       Peer Address:Port
  39. LISTEN     0     128                                  :::111                                 :::*
  40. LISTEN     0     128                                   *:111                                  *:*
  41. LISTEN     0     100                                   :::8080                                 :::*
  42. LISTEN     0     128                                  :::49906                               :::*
  43. LISTEN     0     128                                   *:56818                                *:*
  44. LISTEN     0     128                                  :::22                                  :::*
  45. LISTEN     0     128                                   *:22                                   *:*
  46. LISTEN     0     128                           127.0.0.1:631                                   *:*
  47. LISTEN     0     128                                 ::1:631                                 :::*
  48. LISTEN     0     100                                  ::1:25                                   :::*
  49. LISTEN     0     100                           127.0.0.1:25                                    *:*
  50. LISTEN     0     128                           127.0.0.1:6010                                 *:*
  51. LISTEN     0     128                                 ::1:6010                                :::*
  52. LISTEN     0     128                           127.0.0.1:6011                                  *:*
  53. LISTEN     0     128                                  ::1:6011                                 :::*
  54. LISTEN     0     128                           127.0.0.1:6012                                  *:*
  55. LISTEN     0     128                                 ::1:6012                                :::*
  56. LISTEN     0     1                      ::ffff:127.0.0.1:8005                                 :::*
  57. LISTEN     0     100                                  :::8009                                :::*
  58. ###解析:tomcat默認監(jiān)聽在8080端口上,啟動監(jiān)聽端口為8005,8009####
  59. ##########Tomcat B服務(wù)器上同樣安裝,這里就不再重復(fù)演示了########
  60. ##########更改監(jiān)聽端口############
  61. [root@node1conf]# vim /usr/local/tomcat/conf/server.xml
  62.     
  63.               connectionTimeout="20000"
  64.                redirectPort="8443"/>
  65. ##########重新啟動服務(wù)############
  66. [root@node1conf]# catalina.sh stop
  67. [root@node1conf]# catalina.sh start
  68. [root@node1conf]# scp server.xml 192.168.18.2:/usr/local/tomcat/conf/
  69. [root@node2local]# catalina.sh stop
  70. [root@node2local]# catalina.sh start

#p#

3、配置前端服務(wù)器實現(xiàn)負載均衡

 
 
 
 
  1. ##########安裝Apache###################
  2. [root@node~]# yum -y install httpd
  3. [root@node~]# service httpd start
  4. ##########配置基于mod_proxy代理,負載均衡########
  5. [root@node~]# cd /etc/httpd/conf.d/
  6. [root@nodeconf.d]# vim mod_proxy_tomcat.conf
  7. ProxyViaOn
  8. ProxyRequestsOff      #關(guān)閉正向代理
  9. ProxyPreserveHostOff
  10.      #定義代理的后端服務(wù)器
  11. BalancerMember  http://192.168.18.39:80 loadfactor=1       #指定后端服務(wù)器地址及端口
  12. BalancerMember  http://192.168.18.36:80 loadfactor=1
  13. ProxySet  lbmethod=byrequests
  14.   SetHandler balancer-manager
  15.   Proxypass !
  16.   Order Deny,Allow
  17.   Allow from all
  18. ProxyPass/ balancer://hotcluster/
  19. #stickysession=JSESSIONID|jsessionidnofailover=On
  20. ProxyPassReverse/ balancer://hotcluster/
  21.   Order Allow,Deny
  22.   Allow From all
  23.   Order Allow,Deny
  24.   Allow From all
  25. ############測試語法的正確性##############
  26. [root@nodeconf.d]# service httpd configtest
  27. ###########重啟服務(wù)#######################
  28. [root@nodeconf.d]# service httpd restart

4、查看鏈接狀況開啟tomcat管理功能:

 
 
 
 
  1. ##注意:由于兩臺后端服務(wù)器可能都會用到,所以兩邊都要創(chuàng)建用戶并且保持一致##
  2. #########更改用戶管理配置文件######
  3. [root@node1conf]# vim /usr/local/tomcat/conf/tomcat-users.xml
  4. ##內(nèi)容:##
  5.   
  6.   
  7.   
  8. #########復(fù)制到Tomcat B###########
  9. [root@node1conf]# scp tomcat-users.xml 192.168.18.2:/usr/local/tomcat/conf/
  10. ##########重新啟動服務(wù)############
  11. [root@node1conf]# catalina.sh stop
  12. [root@node1conf]# catalina.sh start
  13. [root@node2local]# catalina.sh stop
  14. [root@node2local]# catalina.sh start

5、簡單部署主頁查看session值:

 
 
 
 
  1. ##########部署虛擬目錄和部署主頁#############
  2.         #########  Tomcat A  ###########
  3. [root@node1 tomcat]#  mkdir webapps/testapp/WEB-INF/{lib,classes} -pv
  4. [root@node1 tomcat]# vim webapps/testapp/index.jsp
  5. ###內(nèi)容###
  6. <%@ page language="java" %>
  7.   TomcatA
  8.   
  9.     

    TomcatA 

  10.     
  11.       
  12.         Session ID
  13.     <% session.setAttribute("abc","abc"); %>
  14.         <%= session.getId() %>
  15.       
  16.       
  17.         Created on
  18.         <%= session.getCreationTime() %>
  19.      
  20.     
  21.   
  22. [root@node1 tomcat]# catalina.sh stop
  23. [root@node1 tomcat]# catalina.sh start
  24.           ############ Tomcat B ###########
  25. [root@node2 tomcat]#  mkdir webapps/testapp/WEB-INF/{lib,classes} -pv
  26. [root@node2 tomcat]# vim webapps/testapp/index.jsp
  27. ###內(nèi)容###
  28. <%@ page language="java" %>
  29.   TomcatB
  30.   
  31.     

    TomcatB 

  32.     
  33.       
  34.         Session ID
  35.     <% session.setAttribute("abc","abc"); %>
  36.         <%= session.getId() %>
  37.       
  38.       
  39.         Created on
  40.         <%= session.getCreationTime() %>
  41.      
  42.     
  43.   
  44. [root@node2 webapps]# catalina.sh stop
  45. [root@node2 webapps]# catalina.sh start

#p#

6、基于內(nèi)存復(fù)制實現(xiàn)session共享集群:

 
 
 
 
  1. ############# Tomcat A ############
  2. [root@node1 ~]# cd /usr/local/tomcat/conf/
  3. [root@node1 conf]# nano server.xml      #由于以下內(nèi)容有縮進格式建議使用此編輯器
  4. ##添加在/host和/engine之間:##
  5.         
  6.                  channelSendOptions="8">
  7.           
  8.                    expireSessionsOnShutdown="false"
  9.                    notifyListenersOnReplication="true"/>
  10.           
  11.             
  12.                         address="228.0.0.4"
  13.                         port="45564"
  14.                         frequency="500"
  15.                         dropTime="3000"/>
  16.             
  17.                       address="192.168.18.1"            #自己的地址
  18.                       port="4000"
  19.                       autoBind="100"
  20.                       selectorTimeout="5000"
  21.                       maxThreads="6"/>
  22.             
  23.               
  24.             
  25.             
  26.             
  27.           
  28.           
  29.                  filter=""/>
  30.           
  31.           
  32.                     tempDir="/tmp/war-temp/"
  33.                     deployDir="/tmp/war-deploy/"
  34.                     watchDir="/tmp/war-listen/"
  35.                     watchEnabled="false"/>
  36.           
  37.           
  38.         
  39. #停止tomcat##
  40. [root@node1 ~]# catalina.sh stop
  41. [root@node1 conf]# cp web.xml ../webapps/testapp/WEB-INF/
  42. [root@node1 conf]# vim ../webapps/testapp/WEB-INF/web.xml
  43. 添加如下字段:
  44.                #表示這個應(yīng)用程序的會話將實現(xiàn)分布式
  45. [root@node1 conf]# scp ../webapps/testapp/WEB-INF/web.xml 192.168.18.2:/usr/local/tomcat/webapps/testapp/WEB-INF/
  46. [root@node1 conf]# scp server.xml 192.168.18.2:/usr/local/tomcat/conf/
  47. [root@node1 conf]# catalina.sh start
  48. ############ Tomcat B ###########
  49. [root@node1 ~]# catalina.sh stop
  50. [root@node1 conf]# catalina.sh start

總結(jié):我們發(fā)現(xiàn)無論如何刷新,session id的信息都不會再改變。至此我們完成了使用mod_proxy實現(xiàn)負載均衡和利用tomcat集群實現(xiàn)session共享。下面我們來部署商店的應(yīng)用。

7、在線商店的應(yīng)用實現(xiàn)

 
 
 
 
  1. ############ Tomcat A ############
  2. [root@node1 ~]# unzip shopxx-a5-Beta.zip
  3. [root@node1 ~]# mv shopxx-v3.0-Beta/* /usr/local/tomcat/webapps/shopxx
  4. [root@node2 tomcat]# vim webapps/shopxx/WEB-INF/web.xml
  5.    #添加此字段
  6. ############ Tomcat B ############
  7. [root@node2 ~]# unzip shopxx-a5-Beta.zip
  8. [root@node2 ~]# mv shopxx-v3.0-Beta/* /usr/local/tomcat/webapps/shopxx
  9. [root@node2 tomcat]# vim webapps/shopxx/WEB-INF/web.xml
  10.    #添加此字段

#p#

注:安裝環(huán)境不符合基本環(huán)境需要增加內(nèi)存:方法如下

 
 
 
 
  1. ######## Tomcat A ########################
  2. [root@node1 ~]# cd /usr/local/tomcat/bin/
  3. [root@node1 bin]# vim catalina.sh
  4. JAVA_OPTS="$JAVA_OPTS -Xmx256M"     //237行
  5. 注釋:修改java虛擬機的內(nèi)存需要在啟動腳本里修改; -Xmx:定義java虛擬機使用最大內(nèi)存。其中M:指的是MB,不指定則為KB
  6. ######### Tomcat B 服務(wù)器也需要更改#######
  7. #########重新啟動服務(wù)#####################

更改完之后下一步:無法進入到安裝頁面會重新回到進入頁面;

原因:因為安裝時后端可能會出現(xiàn)負載均衡轉(zhuǎn)移所以導(dǎo)致無法進入安裝頁面,只能使用本地安裝

 
 
 
 
  1. ######切換至前端服務(wù)器#########
  2. [root@node ~]# yum -y install firefox
  3. [root@node ~]# firefox &

安裝商城應(yīng)用

安裝mysql服務(wù)器,并授權(quán)一個用戶用于登錄安裝服務(wù)

 
 
 
 
  1. ############ Tomcat A ############
  2. [root@node1 shopxx]# yum -y install mysql-server
  3. [root@node1 shopxx]# service mysqld start
  4. [root@node1 shopxx]# mysql
  5. mysql> grant all on *.* to 'shopuser'@'192.168.%.%' identified by 'shoppass';
  6. mysql> flush privileges;
  7. ############ Tomcat B ############
  8. [root@node2 shopxx]# yum -y install mysql-server
  9. [root@node2 shopxx]# service mysqld start
  10. [root@node2 shopxx]# mysql
  11. mysql> grant all on *.* to 'shopuser'@'192.168.%.%' identified by 'shoppass';
  12. mysql> flush privileges;

點擊完成安裝,重啟web服務(wù)刪除install目錄

 
 
 
 
  1. [root@node1 shopxx]# mv install install.bak
  2. [root@node1 shopxx]# catalina.sh stop
  3. [root@node1 shopxx]# catalina.sh start

將Tomcat A 上shopxx安裝文件復(fù)制到Tomcat B上

 
 
 
 
  1. [root@node1 webapps]# scp -rp shopxx/* 192.168.18.2:/usr/local/tomcat/webapps/shopxx/
  2. [root@node2 shopxx]# catalina.sh stop
  3. [root@node2 shopxx]# catalina.sh start

下面就可以可以在商城系統(tǒng)注冊一個帳號,并登錄到系統(tǒng),購買一些衣服等,查看購物車中是否保存已加入到購物車中的衣服等等。

至此,tomcat基于session共享集群實現(xiàn)在線商城應(yīng)用部署就完美實現(xiàn)了,注意此商城不可做商業(yè)用途。


當(dāng)前名稱:Tomcat完美實現(xiàn)在線商城應(yīng)用部署
當(dāng)前地址:http://www.5511xx.com/article/dhsehcg.html