posts - 119, comments - 62, trackbacks - 0, articles - 0

          2008年9月10日

          http://note.youdao.com/share/web/file.html?id=611b9b6bdf9abafbb1ee45436f50be9e&type=note

          posted @ 2015-09-18 21:04 Kevin Meng 閱讀(228) | 評論 (0)編輯 收藏

          每次都在setupconnection...的地方停住了,后來在發現原來是因為我的手機沒有插SD卡,憤的!!

          posted @ 2015-08-10 23:15 Kevin Meng 閱讀(196) | 評論 (0)編輯 收藏

          geoJOSN為UTF-8編碼,轉成shp后部分字段出現亂碼,一直找不到解決的辦法。后來裝了QGIS 1.7.4,打開geoJSON文件,注意選擇編碼為UTF-8,然后save as..,保存成shp文件,此時編碼必須選擇system就可以解決中文亂碼的問題了。

          posted @ 2012-10-22 11:53 Kevin Meng 閱讀(1490) | 評論 (0)編輯 收藏

          http://huangqiqing123.iteye.com/blog/1246882 

          posted @ 2012-08-15 12:52 Kevin Meng 閱讀(264) | 評論 (0)編輯 收藏

          以下的GPS定位代碼,在MOTO XT800,ME811,HTC S610d等手機中定位都沒有問題,但是在MOTO XT882里面就是無法定位,后來發現問題出現在紅色的代碼部分,強制改成GPS定位就可以了。
                locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
                Criteria criteria = new Criteria();
                criteria.setAccuracy(Criteria.ACCURACY_FINE);
                criteria.setAltitudeRequired(false);
                criteria.setBearingRequired(false);
                criteria.setCostAllowed(true);
                criteria.setPowerRequirement(Criteria.POWER_LOW);
                String provider = locationManager.getBestProvider(criteria, true);
                /* 每隔1000ms更新一次,并且不考慮位置的變化。 */
                locationManager.requestLocationUpdates(provider, 3000, 5, locationListener);
                //強制使用GPS定位
                //locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 3000, 5, locationListener);

          posted @ 2012-08-07 20:59 Kevin Meng 閱讀(337) | 評論 (0)編輯 收藏

          這次項目開發,運行環境的tomcat版本從5.5.12升級到了6.0.18,發現以前的項目不能跑了,訪問一個很簡單的jsp也會報錯,說無法編譯,報的錯誤就是:Only a type can be imported. com.xxx.xxx.XXX resolves to a package,意思就是說你jsp頁面上引用的那個類不存在,可是在老版本明明跑的好好的,而且另一個現象就是項目根目錄下的jsp訪問沒有問題,子目錄下就報錯,google了一下,發現這是新版本tomcat的一個變化,就是如果不指定context的話,每一個子文件夾都會被tomcat當作一個獨立的虛擬應用的,所以每個子文件夾下的jsp頁面訪問的時候,都會在它的同一層找WEB-INF里面的class,這樣當然找不到了,只有剛巧放在根目錄下的jsp文件能訪問。

          解決辦法:其實這也是自己以前寫tomcat的配置文件時候,寫法不規范造成的,以前的server.xml里面host信息代碼如下:

          <Host name="www.local.com" appBase="D://projects//myWebSite//WebContent" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
              <Alias>192.168.1.43</Alias> 
              <Context path="" docBase="" reloadable="true">
               <Logger className="org.apache.catalina.logger.FileLogger" directory="logs" prefix="www.local.com_log." suffix=".txt" timestamp="true"/>
              </Context></Host>

          這其中Context里面的docBase為空,文件路徑就靠Host里的appBase去指定,這樣tomcat認為你這個站點下沒有應用,會自動把每個文件夾當作一個虛擬應用處理。修改后的代碼片段如下:

          <Host name="www.local.com" appBase="" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
              <Alias>192.168.1.43</Alias> 
              <Context path="" docBase="D://projects//myWebSite//WebContent" reloadable="true">
               <Logger className="org.apache.catalina.logger.FileLogger" directory="logs" prefix="www.local.com_log." suffix=".txt" timestamp="true"/>
              </Context></Host>

          可以看到Host里面不再指定appBase了,而是在主機下建立一個應用,應用的文件路徑通過docBase來指定,這樣就不會再產生找不到class的問題了。

          ps:tomcat的這個問題好像是從5.5.28就開始了,記得以前也曾經嘗試過升級tomcat,就發生了類似的問題,但是當時沒充裕時間去解決,就一直把問題遺留到現在。

          posted @ 2012-08-01 11:14 Kevin Meng 閱讀(522) | 評論 (0)編輯 收藏

          web開發中,我們經常需要將一個表的數據插入到另外一個表,有時還需要指定導入字段,設置只需要導入目標表中不存在的記錄,雖然這些都可以在程序中拆分成簡單sql來實現,但是用一個sql的話,會節省大量代碼。下面我以mysql數據庫為例分情況一一說明:

          兩張表:insertTest和insertTest2,前者中有測試數據
          create table insertTest(id int(4),name varchar(12));
          insert into insertTest values(100,'liudehua');
          insert into insertTest values(101,'zhourunfa');
          insert into insertTest values(102,'zhouhuajian');
          1.如果2張表的字段一致,并且希望插入全部數據,可以用這種方法:
            INSERT INTO 目標表 SELECT * FROM 來源表;
          insert into insertTest select * from insertTest2;
          2.如果只希望導入指定字段,可以用這種方法:
           INSERT INTO 目標表 (字段1, 字段2, ...) SELECT 字段1, 字段2, ... FROM 來源表;
           注意字段的順序必須一致。
          insert into insertTest2(id) select id from insertTest2;
          3.如果您需要只導入目標表中不存在的記錄,可以使用這種方法:
           INSERT INTO 目標表  
           (字段1, 字段2, ...)  
           SELECT 字段1, 字段2, ...  
           FROM 來源表  
           WHERE not exists (select * from 目標表  
           where 目標表.比較字段 = 來源表.比較字段); 
           1>.插入多條記錄:
          insert into insertTest2
          (id,name)
          select id,name
          from insertTest
          where not exists (select * from insertTest2
          where insertTest2.id=insertTest.id);
           2>.插入一條記錄:
          insert into insertTest    
          (id, name)    
          SELECT 100, 'liudehua'    
          FROM dual    
          WHERE not exists (select * from insertTest    
          where insertTest.id = 100);
          使用 dual 作表名,select 語句后面直接跟上要插入的字段的值。

          posted @ 2012-02-03 16:04 Kevin Meng 閱讀(531) | 評論 (0)編輯 收藏

          1、arcgis server安裝過程中,主體文件安裝結束,配置server 賬號時,遇到invalid password specified,對于arcgissom和arcgissoc兩個accounts,任何密碼都適合,后來想著新建另外兩個arcgissom1和arcgissoc1,通過了,再一看,原來arcgissom和arcgissoc兩個賬號在計算機管理的賬戶里已經存在。刪去后再裝就沒問題了。
          不會有問題了

          posted @ 2011-11-28 13:03 Kevin Meng 閱讀(1613) | 評論 (0)編輯 收藏

          以前的項目運行好好的,升級了ADT后,進行junit測試時出現錯誤:

          #
          # A fatal error has been detected by the Java Runtime Environment:
          #
          #  Internal Error (classFileParser.cpp:3494), pid=7480, tid=7376
          #  Error: ShouldNotReachHere()
          #
          # JRE version: 6.0_29-b11
          # Java VM: Java HotSpot(TM) 64-Bit Server VM (20.4-b02 mixed mode windows-amd64 compressed oops)
          # If you would like to submit a bug report, please visit:
          #   http://java.sun.com/webapps/bugreport/crash.jsp
          #

          解決辦法:
          1.選中junit測試類,右鍵 -> Run As -> Run Configurations...
          2.切換到Classpath選項欄,刪掉Bootstrap Entries里面的Android Library,然后點擊右側的Advanced.. -> Add Library -> JRE System Library,一路next即可。

          這時再運行該類,就能正常運行了。

          posted @ 2011-11-09 20:30 Kevin Meng 閱讀(2478) | 評論 (0)編輯 收藏

          字段為Datetime,獲得2011-11-05以后添加的記錄
          SELECT *  FROM geo_corporation t WHERE TO_DAYS(t.addtime)>TO_DAYS('2011-11-05')
          某一時間段內的記錄
          SELECT *  FROM geo_corporation t WHERE TO_DAYS(t.addtime)>TO_DAYS('2011-11-05') AND TO_DAYS(t.addtime)<TO_DAYS('2011-11-7')

          posted @ 2011-11-07 11:56 Kevin Meng 閱讀(261) | 評論 (0)編輯 收藏

          可以用AntiRSI,也是免費的,非常好用。

          posted @ 2010-06-24 10:52 Kevin Meng 閱讀(420) | 評論 (0)編輯 收藏

          在IBM Z60M上安裝Mac OS 10.4.8
          (1)下載[weiphone][Mac_OS][Mac OS X 10.4.8][JaS AMD-Intel-SSE2-SSE3 with PPF1 & PPF2].iso,然后通過nero刻盤。注意:盤要好,如果沒有刻錄好,安裝的時候就會出現I/O錯誤,這個折騰了我不少時間。
          (2)在XP下分出一個盤來,大概10G的空間就可以了,格式化成FAT32格式(建議用PM軟件)。
          (3)進入BISO,設為從光盤啟動,把安裝盤放入光驅,重新啟動電腦。
          (4)如果不出意外,您將進入Mac OS安裝程序。點“實用程序”-》“磁盤工具”,在這里您將看到所有的盤符,選中我們已經格式化好的磁盤,點抹掉,宗卷格式選Mac OS 擴展(日志式),格式化完后,退出磁盤工具。
          (5)再次回到安裝Mac的介紹頁面,點繼續,選中我們格式化好的盤來安裝mac,點繼續
          (6)進入安裝類型,這里很關鍵。把要安裝的打印機驅動選上(我全選),本地化語言我選簡體中文和繁體中文。JaS Intel 10.4.8 ATA kexts included必須選。然后Support for the most common hardware中的10.4.8.x600.Mobility.Support選上。其他都不要選,點下一步即可。注意,不能把所有的硬件驅動都選上,如果那樣的話可以正常安裝,但是重啟后進入Mac時會出現黑屏現象,應該是由于硬件驅動沖突造成的。
          (7)點下一步開始安裝,耐心等待,安裝完后重啟,就可以進入美麗的Mac世界了。
           
          聲明:本文只針對IBM Z60M,別的型號的機器由于硬件驅動等問題有可能會不能正常安裝。

          posted @ 2009-08-05 12:27 Kevin Meng 閱讀(328) | 評論 (0)編輯 收藏

          把jdk\bin目錄下的msvcr71.dll復制到tomcat安裝目錄的\bin下即可

          posted @ 2009-02-16 13:29 Kevin Meng 閱讀(4220) | 評論 (4)編輯 收藏

          在登陸上服務器之后,打開我的電腦,在地址欄中輸入“\\tsclient\C”就可以查看本地的C盤

          posted @ 2009-02-12 15:31 Kevin Meng 閱讀(911) | 評論 (3)編輯 收藏

          C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\tempfile.tmp所有.tmp文件刪除然后再上傳。有可能需要多試幾次。
          最好用TSVN上傳而不要用Subeclipse

          posted @ 2009-02-06 16:08 Kevin Meng 閱讀(2589) | 評論 (2)編輯 收藏

          (1)安裝php_pdo.dll和php_pdo_cio.dll,在php的安裝包里面有,建議用php5.2以上版本;
          (2)安裝oracle 10g客戶端,如果你用的是oracle 9i同樣需要安裝oracle 10g客戶端,否則無法連接oracle。如果你的機器上已經安裝有oracle 9i,安裝oracle 10g客戶端對oracle 9i并沒有影響。
          (3)重新啟動機器。
          (4)用phpinfo()檢驗是否已經加載了php_pdo和php_pdo_oci擴展

          連接代碼

          [development]

          database.config.type = pdo_oci
          database.config.host=localhost
          database.config.username = szapp
          database.config.password = szapp
          database.config.dbname = ora
          database.config.port=1521




          $params = array ('dbname' => $config->database->config->dbname,
           'username' => $config->database->config->username,
           'password' => $config->database->config->password,
           'host'=>$config->database->config->host,
           'port'=>$config->database->config->port );
          $db = Zend_Db::factory ( $config->database->config->type, $params );
          $registry->set ( 'db', $db );

          posted @ 2009-01-16 13:54 Kevin Meng 閱讀(751) | 評論 (0)編輯 收藏

          步驟如下:
          1.      AP服務器上建立c:\backup文件夾(文件夾路徑客戶自己選擇)
          2.      打開dbbkup.bat-->修改紅字部分-->保存
          exp citictest/citictest@colm2 file=c:\backup\%date:~4,20%.dmp    log=c:\backup\%date:~4,20%.log
          compress=y direct=n rows=y owner='citictest'
          consistent=n constraints=y grants=y indexes=y triggers=y
          3.      將dbbkup.bat放置于c:\backup文件夾之下
          4.      控制面板-->任務計劃-->添加任務計劃-->選擇程序以進行計劃-->瀏覽-->選中dbbkup.bat-->每日執行-->選擇時間-->輸入用戶名密碼-->完成
          5.      執行時間過了之后,c:\backup文件夾下面會出現yyyy-mm-dd.dmp命名的DUMP檔案

          posted @ 2009-01-08 15:28 Kevin Meng 閱讀(265) | 評論 (0)編輯 收藏

          以前的項目用的是struts1,運行得好好的,現在改用struts2后,發現運行不到一天tomcat就出現內存溢出的錯誤。使用jProfiler分析一下,發現tomcat啟動后使用的內存就一路飆升,而且放在action里面的類根本沒有釋放掉,應該是struts出現了問題,查一下struts的配置,原來沒有配ActionContextCleanUp,在web.xml中加入
          <filter>
            <filter-name>struts-cleanup</filter-name>
            <filter-class>
             org.apache.struts2.dispatcher.ActionContextCleanUp
            </filter-class>
           </filter>
           <filter-mapping>
            <filter-name>struts-cleanup</filter-name>
            <url-pattern>/*</url-pattern>
           </filter-mapping>
          再次用jprofiler進行分析,果然好了。

          posted @ 2008-12-11 12:44 Kevin Meng 閱讀(780) | 評論 (0)編輯 收藏

          (1)定義在web.xml中定義JSPSupportServlet
           <servlet>
            <servlet-name>JSPSupportServlet</servlet-name>
            <servlet-class>
             org.apache.struts2.views.JspSupportServlet
            </servlet-class>
            <load-on-startup>1</load-on-startup>
           </servlet>
          (2)把struts-html.tld復制到WEB-INF目錄
          (3)在頁面最前面定義標簽庫
          <#assign html=JspTaglibs["/WEB-INF/struts-html.tld"] />
          (4)在<head>中引用標簽
          <@html.base/>
           (5)特別注意,在action的配置里面type="freemarker"去掉。因為如果加type="freemarker",那么base為action的路徑,如http://localhost:8080/szmap/findpoi.go,如果去掉type="freemarker",那么base才為網頁路徑,如http://localhost:8080/szmap/find_poi.htm

          posted @ 2008-11-12 12:11 Kevin Meng 閱讀(1205) | 評論 (0)編輯 收藏

          最近需要把www.map512.cn的地圖重新進行分割一下,因為以前的地圖是通過arcIMS進行分割的,還要配置arcIMS,那煩死人,所以決定還是把以前VB+ArcEngine版本的割圖程序修改一下,改成C#+ArcEngine,改完后馬上割起來,結果發現程序運行時所耗的內存不斷提高,最后異常退出了,這說明肯定有個地方有內存溢出,剛開始以為是我代碼的問題,不斷的修改代碼,花了兩天時間還是不行,調試后發現出錯的地方在arcEngine的出圖函數output()上,于是打電話問ESRI的客服,給我的答案是沒有解決的辦法,噴飯!!!!

          昨天老肖提醒了我一下,打補丁,于是立刻給arcEngine打上了SP5補丁,果然再也沒有問題了!靠
          心得是:有事別找ESRI技術支持!:)

          posted @ 2008-10-24 10:08 Kevin Meng 閱讀(1975) | 評論 (8)編輯 收藏

          (1)點項目-》添加應用-》瀏覽,導入log4net.dll
          (2)修改app.config

          <?xml version="1.0" encoding="utf-8" ?>
          <configuration>
            <configSections>
              <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
                <section name="clipmapAEC.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
                <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
              </sectionGroup>
            </configSections>
            <userSettings>
              <clipmapAEC.Properties.Settings>
                <setting name="mapModelMinX" serializeAs="String">
                  <value>-80000</value>
                </setting>
                <setting name="mapModelMaxX" serializeAs="String">
                  <value>170000</value>
                </setting>
                <setting name="mapModelMinY" serializeAs="String">
                  <value>-80000</value>
                </setting>
                <setting name="mapModelMaxY" serializeAs="String">
                  <value>170000</value>
                </setting>
                <setting name="scalePara" serializeAs="String">
                  <value>2</value>
                </setting>
                <setting name="tileSize" serializeAs="String">
                  <value>512</value>
                </setting>
              </clipmapAEC.Properties.Settings>
              <log4net>
                <root>
                  <level value="INFO" />
                  <appender-ref ref="consoleApp" />
                </root>

                <appender name="rollingFile" type="log4net.Appender.RollingFileAppender,log4net" >
                  <param name="File" value="C:\\clipmap_log.txt" />
                  <param name="AppendToFile" value="false" />
                  <param name="RollingStyle" value="Date" />
                  <param name="DatePattern" value="yyyy.MM.dd" />
                  <param name="StaticLogFileName" value="true" />
                  <layout type="log4net.Layout.PatternLayout,log4net">
                    <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
                    <param name="Header" value=" ----------------------header--------------------------" />
                    <param name="Footer" value=" ----------------------footer--------------------------" />
                  </layout>
                </appender>
                <appender name="consoleApp" type="log4net.Appender.ConsoleAppender,log4net">
                  <layout type="log4net.Layout.PatternLayout,log4net">
                    <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
                  </layout>
                </appender>
                <logger name="Log4NetTest.LogTest">
                  <level value="ERROR" />
                  <appender-ref ref="rollingFile" />
                  <appender-ref ref="coloredConsoleApp" />
                  <appender-ref ref="SystemEvent" />
                </logger>
              </log4net>
            </userSettings>
          </configuration>
          紅色部分是對log4net的設置,其他不用管
          (3)在要只用log4net的類namespace前面加using log4net; [assembly: log4net.Config.XmlConfigurator()]
          (4)在代碼中使用logger.info("XXXX");就可以了

          posted @ 2008-10-16 15:49 Kevin Meng 閱讀(756) | 評論 (0)編輯 收藏

          環境
          jdk1.6
          tomcat5.028

          首先下載“xalan系列jar包”,下載地址:http://www.apache.org/dyn/closer.cgi/xml/xalan-j,
          然后將tomcat中目錄下:/tomcat/common/endorsed/(xercesImpl.jar和xml-apis.jar)刪掉,然后將下載的xalan系列jar包(包括serializer.jar、xalan.jar、xercesImpl.jar、xml-apis.jar、xsltc.jar)拷貝到/tomcat/common/endorsed目錄,重啟tomcat

          posted @ 2008-10-09 10:25 Kevin Meng 閱讀(1537) | 評論 (0)編輯 收藏

          例如:http://www.map512.cn/findPOI.do?key=南門
          如果不轉碼,request.getParameter("key")返回的是亂碼,在jsp中,我們一般這樣子傳參數
          String key2=URLEncoder.encode(key,"gbk");
          http://www.map512.cn/findPOI.do?key=key2

          那么在freemarker中怎么辦呢?

          <#setting url_escaping_charset='gbk'>
          <a href=http://www.map512.cn/findPOI.do?key=${key?url}>查詢</a>

          posted @ 2008-09-18 16:39 Kevin Meng 閱讀(4589) | 評論 (2)編輯 收藏

          <1>軟硬件環境
          Apache Http Server 2.2.4
          Tomcat 5.028
          jdk1.6
          請自行下載jk_module.so,但注意必須與apache http server的版本對應。

          硬件我手頭有一臺IBM服務器,有三臺刀片機可用,IP分別是
          S1:192.168.70.101
          S2:192.168.70.102
          S3:192.168.70.103
          當然這三臺機器您完全可以用三個一般的臺式機來代替.
          我們的計劃是
          用S1來做應用服務器,用S2來做負載均衡,用S3來做數據庫服務器.
          <2>在S1,S2下安裝jdk1.6
          例如我安裝在c:\jdk1.6下
          添加環境變量:
          JAVA_HOME=C:\jdk1.6
          CLASSPATH=%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar
          在PATH前面加:
          PATH=%JAVA_HOME%\bin;
          <3>在S1下安裝apache,沒有什么值得注意的地方,一路按next就可以了
          我安裝在D:\Apache2.2
          <4>在S1,S2下安裝tomcat 5.028
          也是一路按next就可以了,我安裝在d:\tomcat5.0

          以上對于一個java開發人員來說應該都不是問題,接下來就是重頭戲了!
          <5>配置
          5.1 把下載的mod_jk-1.2.26-httpd-2.2.4.so拷貝到S1機器的D:\Apache2.2\modules目錄下,并改名為mod_jk.so
          5.2 打開S1機器的D:\Apache2.2\conf\http.conf文件,在一堆LoadModule的最后加上這么一行
          LoadModule jk_module modules/mod_jk.so
          5.3 在D:\Apache2.2\conf\http.conf的最后加上對jk_module的配置

          #與tomcat關聯

          <IfModule jk_module>

          JkWorkersFile conf/workers.properties 

          JkMountFile conf/uriworkermap.properties

          JkLogFile logs/mod_jk.log

          JkLogLevel warn

          </IfModule>

          <IfModule dir_module>

              DirectoryIndex index.html,index.jsp,index.htm   

          </IfModule>

          #結束與tomcat關聯

           


          #添加虛擬主機,注意S1上apache網頁文件目錄和tomcat網頁文件目錄要指向同一個目錄,否則靜態頁面會無法訪問  

          <VirtualHost *:80>
                ServerName www.map512.cn
                DocumentRoot D:/Tomcat5.0/webapps
                ServerAdmin support.szmap@gmail.com
                JkMountFile conf/uriworkermap.properties
          </VirtualHost>
          #給虛擬主機目錄付權限
          <Directory D:/Tomcat5.0/webapps>                   
                  Options Indexes FollowSymLinks
                  AllowOverride None
                  Order allow,deny
                  Allow from all
          </Directory>

          #默認訪問
          <IfModule dir_module>
              DirectoryIndex index.html,index.jsp  
          </IfModule>


          5.4 在D:\Apache2.2\conf\http.conf目錄下新建一個文件workers.properties,并添加以下內容

          #
          # workers.properties
          #


          # list the workers by name

          worker.list=SZMAP, status

          # localhost server 1
          # ------------------------
          worker.s1.port=8009
          worker.s1.host=192.168.70.101
          worker.s1.type=ajp13

          # localhost server 2
          # ------------------------
          worker.s2.port=8009
          worker.s2.host=192.168.70.102
          worker.s2.type=ajp13
          # worker.s2.stopped=1

          worker.SZMAP.type=lb
          worker.retries=3
          worker.SZMAP.balance_workers=s1, s2
          worker.SZMAP.sticky_session=1

          worker.status.type=status

          說明:這個文件配置了兩個worker,一個是SZMAP即我們的應用服務,這個應用服務type是lb即負載均衡,并由s1和s2兩個balanced_workers來執行,這里你可以添加無限多個服務器來實現負載(當然,前提是您有足夠的RMB),一個是status是用來查看負載均衡狀態的,我們后面將會用到.

          5.6 在D:\Apache2.2\conf\http.conf目錄下新建一個文件uriworkermap.properties,并添加以下內容

          /*=SZMAP
          /jkstatus=status    #設置除以下類型的文件外,都由tomcat提供服務(也就是說下面列出的格式都有apache提供服務)

          !/*.gif=SZMAP
          !/*.jpg=SZMAP
          !/*.png=SZMAP
          !/*.css=SZMAP
          !/*.js=SZMAP
          !/*.html=SZMAP


          說明:這個配置的意思是,所有的請求都轉到SZMAP這個worker(即上面配置的s1,s2這兩個balanced_workers下的tomcat服務)去執行,除了*.gif,*.html等靜態元素和/jkstatus,/jkstatus由status這個worker執行.

          5.7 Tomcat的配置
          打開S1機器D:\Tomcat5.0\conf\server.xml,找到Engine部分,改成

          <Engine defaultHost="localhost" name="Catalina" jvmRoute="s1">

                <Host appBase="webapps" name="localhost">

             

          <Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster"

                           managerClassName="org.apache.catalina.cluster.session.DeltaManager"

                           expireSessionsOnShutdown="false"

                           useDirtyFlag="true">


                      <Membership 

                          className="org.apache.catalina.cluster.mcast.McastService"

                          mcastAddr="228.0.0.4"

                          mcastPort="45564"

                          mcastFrequency="500"

                          mcastDropTime="3000"/>


                      <Receiver 

                          className="org.apache.catalina.cluster.tcp.ReplicationListener"

                          tcpListenAddress="auto"

                          tcpListenPort="4001"

                          tcpSelectorTimeout="100"

                          tcpThreadCount="6"/>


                      <Sender

                          className="org.apache.catalina.cluster.tcp.ReplicationTransmitter"

                          replicationMode="pooled"/>


                      <Valve className="org.apache.catalina.cluster.tcp.ReplicationValve"

                             filter=".*\.gif;.*\.js;.*\.jpg;.*\.html;.*\.txt;"/>

                  </Cluster>

              

                  <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/>

                </Host>

                <Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/>

                <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>

              </Engine>

          打開S2機器D:\Tomcat5.0\conf\server.xml,找到Engine部分,改成

          <Engine defaultHost="localhost" name="Catalina" jvmRoute="s2">

                <Host appBase="webapps" name="localhost">

              

          <Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster"

                           managerClassName="org.apache.catalina.cluster.session.DeltaManager"

                           expireSessionsOnShutdown="false"

                           useDirtyFlag="true">


                      <Membership 

                          className="org.apache.catalina.cluster.mcast.McastService"

                          mcastAddr="228.0.0.4"

                          mcastPort="45564"

                          mcastFrequency="500"

                          mcastDropTime="3000"/>


                      <Receiver 

                          className="org.apache.catalina.cluster.tcp.ReplicationListener"

                          tcpListenAddress="auto"

                          tcpListenPort="4001"

                          tcpSelectorTimeout="100"

                          tcpThreadCount="6"/>


                      <Sender

                          className="org.apache.catalina.cluster.tcp.ReplicationTransmitter"

                          replicationMode="pooled"/>


                      <Valve className="org.apache.catalina.cluster.tcp.ReplicationValve"

                             filter=".*\.gif;.*\.js;.*\.jpg;.*\.html;.*\.txt;"/>

                  </Cluster>

              

                  <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/>

                </Host>

                <Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/>

                <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>

              </Engine>


          到此,我們的配置已經完成.


          <6>查看結果
          啟動S1和S2下的tomcat服務,然后啟動S1下的apache服務.
          打開流覽器,輸入地址http://192.168.70.101/jkstatus,如果能看到以下界面,那么,恭喜您,您該感謝我了!呵呵!

          JK Status Manager for 192.168.70.101:80

          Server Version: Apache/2.2.4 (Win32) mod_jk/1.2.26
          JK Version: mod_jk/1.2.26


          (every seconds) [Change Format: XML | Property | Text]  [Read Only]   [S=Show only this worker, E=Edit worker, R=Reset worker state, T=Try worker recovery]

           


           

          Listing Load Balancing Worker (1 Worker) [Hide]


           

          [S|E|R]  Worker Status for SZMAP

          Type Sticky Sessions Force Sticky Sessions Retries LB Method Locking Recover Wait Time Max Reply Timeouts
          lb True False 2 Request Optimistic 60 0

          Good Degraded Bad/Stopped Busy Max Busy Next Maintenance
          2 0 0 0 6 32/94

          Balancer Members [Hide]

            Name Type Host Addr Act State D F M V Acc Err CE RE Wr Rd Busy Max Route RR Cd Rs
          [E|R s1 ajp13 192.168.70.101:8009 192.168.70.101:8009 ACT OK/IDLE 0 1 1 0 1821 0 0 0 1.3M 2.0M 0 5 s1     0/0
          [E|R s2 ajp13 192.168.70.102:8009 192.168.70.102:8009 ACT OK/IDLE 0 1 1 0 1821 0 0 0 1.3M 2.0M 0 4 s2     0/0

          Edit one attribute for all members: [Activation |LB Factor |Route |Redirect Route |Cluster Domain |Distance ]



          參考:
          proxy方式:http://blog.chinaunix.net/u/22176/showart_1002535.html
          liunx下的配置:http://seven.blog.51cto.com/120537/57930

          posted @ 2008-09-10 10:25 Kevin Meng 閱讀(558) | 評論 (0)編輯 收藏

          主站蜘蛛池模板: 河北区| 盐边县| 阿巴嘎旗| 依安县| 桃源县| 内江市| 拜城县| 水城县| 荔波县| 佛冈县| 渝北区| 兰考县| 通河县| 略阳县| 桃园市| 大冶市| 固镇县| 张家口市| 盐边县| 兴化市| 凭祥市| 怀安县| 泌阳县| 噶尔县| 二手房| 苍溪县| 任丘市| 巢湖市| 安陆市| 曲靖市| 黔西| 无极县| 咸宁市| 信阳市| 台湾省| 屏东市| 张掖市| 枝江市| 鸡西市| 时尚| 巴中市|