最簡單的同臺電腦運行多個Tomcat服務

想必在JAVA這塊混的人,都有過同臺機器跑多個tomcat的經歷吧.估計很多想人第一時間就想到了,弄N個解壓版的tomcat下來改改端口,就行了.當然沒問題;當然還有人,會想到了apache server....當然也沒問題,個人覺得後者配置有些煩鎖,說實話,本人不喜歡第二種作法!本人選擇第一種做法.但同樣達到第二種的效果,而且簡單!那要怎麼做呢?請慢慢看下面的述說吧. 首先是實現一個Tomcat程序上,運行N個Tomcat實例,然後每個Tomcat實例對應一個應用。 1.解壓Tomcat壓縮包(非Tomcat安裝版),在%Tomcat%目錄下會有bin,common,conf,logs,server,shared,tmp,webapps,work等文件夾與文件,我統稱這些爲Tomcat程序。 2.創建應用名稱爲Tomcat8080的文件夾(非%Tomcat%下,該爲Tomcat80),將%Tomcat%文件夾下的conf,logs,tmp,work文件夾拷貝到%Tomcat8080%目錄下。 3.修改%Tomcat8080%/conf/server.xml配置文件中的三個端口: a.Server port=”8?05″ shutdown=”SHUTDOWN” b.Connector port=”8?80″ maxHttpHeaderSize=”8192″ … c.Connector port=”8?09″ enableLookups=”false” … 注:Tomcat默認的這三個端口號爲8005,8080,8009,Tomcat80對應8105,80,8109,Tomcat8080對應8205,8080,8209,以此類推。 4.現在啓動Tomcat實例,在%Tomcat8080%目錄下創建startup.bat腳本,代碼如下: set JAVA_HOME=D:/jdk1.6 set CATALINA_BASE=D:/Tomcat8080 set CATALINA_HOME=D:/Tomcat8080 %CATALINA_HOME%/bin/catalina start 5.啓動各自%Tomcat[?]%的startup.bat,各自獨立的Tomcat實例就啓動了。 那爲什麼我會想要將這些各自的Tomcat實例轉成Windows服務呢?原因有三點: 1.多個Tomcat實例啓動會有多個Tomcat的Shell在運行,非常不美觀; 2.通常web服務器都需要遠程登錄,如果使用startup.bat腳本啓動的方式,那管理員將不能使用註銷,而只能關閉遠程連接,這樣做的後果是服務器會提示“超出最大連接數”的錯誤,非常麻煩; 3.將Tomcat實例轉成Windows服務,可以讓應用在系統啓動時候一起啓動,而不需要手動去啓動每個Tomcat實例,非常方便; 其實將Tomcat實例轉成Windows服務也是很簡單的事情,只需要運行下面腳本 set JAVA_HOME=D:/jdk1.6 set CATALINA_BASE=D:/Tomcat8080 set CATALINA_HOME=D:/Tomcat8080 %CATALINA_HOME%/bin/service.bat install "Tomcat8080" 將上述存成.bat文件執行,就會在windows服務控制檯出現了Apache Tomcat "Tomcat8080"的服務選項,接下就是服務設定了,不再此羅嗦了^_^ 要出現Apache Tomcat "Tomcat8080"這個服務選項,就再改改上面的腳本了吧! 超值附送^_^:windows下刪除服務: 辦法一: 用sc.exe這個Windows命令 開始——運行——cmd.exe,然後輸入sc就可以看到了。使用辦法很簡單: sc delete "服務名" (如果服務名中間有空格,就需要前後加引號) 如針對上面的: sc delete KSD2Service 方法二:直接進行註冊表編輯(不推薦) 打開註冊表編輯器,找到下面的鍵值: HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services 一般服務會以相同的名字在這裏顯示一個主健,直接刪除相關的鍵值便可。 本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/smh821025/archive/2009/09/16/4558696.aspx
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章