Atea - Hero's Grave

          面向?qū)ο螅_源,框架,敏捷,云計算,NoSQL,商業(yè)智能,編程思想。

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            40 隨筆 :: 0 文章 :: 28 評論 :: 0 Trackbacks

          2008年7月18日 #

          有2臺linux服務(wù)器,一臺布apache(A)和tomcat應(yīng)用程序(B),一臺布solr管理平臺(C)。

          發(fā)現(xiàn)的bug為:
          前臺訪問A,A轉(zhuǎn)發(fā)給B,B再訪問C,訪問失敗。

          經(jīng)試驗,web server和app server不能放到一臺服務(wù)器上,否則通過apache代理,app server調(diào)用solrj會因獲取不到連接而失敗。

          目前跟蹤調(diào)查到
          org.apache.solr.client.solrj.impl.CommonsHttpSolrServer
          ->
          org.apache.commons.httpclient.HttpClient
          ->
          org.apache.commons.httpclient.MultiThreadedHttpConnectionManager

          httpclient的版本是3.1,懷疑是MultiThreadedHttpConnectionManager自定義的池出的問題。
          網(wǎng)上搜了搜,沒什么相關(guān)資料。最近太忙,沒精力刨根問底了。暫時改了solrj源碼,使用了默認的new HttpClient()
          有誰也遇到類似問題并解決了,或知道怎么回事,麻煩告知一下。

          PS:
          solr更新這么迅速,為啥不把httpclient升級一下

          posted @ 2012-02-29 16:45 Atea 閱讀(332) | 評論 (0)編輯 收藏

          最近又折騰起了activemq。見Failover的文檔沒有中文的,就順手給翻了:

          Apache ActiveMQ - The Failover Transport Options

          Option Name Default Value Description
          initialReconnectDelay 10
          第一次重連的時間間隔(毫秒)
          maxReconnectDelay 30000
          最長重連的時間間隔(毫秒)
          useExponentialBackOff true
          重連時間間隔是否以指數(shù)形式增長
          backOffMultiplier 2.0
          指數(shù)的值
          maxReconnectAttempts -1 >= AMQ v5.6
          0 < AMQ v5.6,
          自版本5.6起:-1為默認值,代表不限重試次數(shù);0代表從不重試(只嘗試連接一次,并不重連)
          5.6以前的版本:0為默認值,代表不限重試次數(shù)
          所有版本:如果設(shè)置為大于0的數(shù),代表最大重試次數(shù)
          startupMaxReconnectAttempts 0
          初始化時的最大重連次數(shù)。一旦連接上,將使用maxReconnectAttempts的配置
          randomize true
          使用隨機鏈接(注:達到負載均衡的目的)
          backup false
          提前初始化一個未使用連接,以便進行快速失敗轉(zhuǎn)移
          timeout -1
          設(shè)置發(fā)送操作的總計最大超時時間(毫秒)
          trackMessages false
          在重連過程中緩存消息
          maxCacheSize 131072
          緩存的最大字節(jié)數(shù)
          updateURIsSupported true
          設(shè)定是否可以動態(tài)修改broker uri(自版本5.4起)

          posted @ 2011-12-28 10:35 Atea 閱讀(2977) | 評論 (0)編輯 收藏

               摘要: 標題起的有些大,僅代表自己和身邊一些人從業(yè)這幾年來的感悟:P  閱讀全文
          posted @ 2011-09-01 15:31 Atea 閱讀(2762) | 評論 (5)編輯 收藏

          現(xiàn)象:
          JDBC執(zhí)行 UPDATE DB_NAME.TABLE_NAME SET COLUMN_NAME xxxx;
          然后操作并不計入mysql binlog,主從復(fù)制失效。

          發(fā)生條件:
          1、MySQL 5.1 (理論上5.1+)
          2、SQL語句指定庫名/跨庫執(zhí)行,之前沒有指到這個庫下面(use DATABASE_NAME )
          3、MySQL主從配置沒有加--replicate-wild-do-table=db_name.%

          解決辦法:
          在主從配置文件內(nèi)加入?yún)?shù)
          --replicate-wild-do-table=db_name.%

          參考文檔:
          MySQL官方文檔
          posted @ 2011-06-24 16:47 Atea 閱讀(533) | 評論 (0)編輯 收藏

               摘要: VJET JavaScript IDE 是一個Eclipse插件,提供了整套的Javascript開發(fā)環(huán)境:語法提示、自動補全、高亮、編輯糾錯、debug等。
          比起Aptana來,VJET更加輕量,速度也更快。  閱讀全文
          posted @ 2011-06-08 13:48 Atea 閱讀(10358) | 評論 (1)編輯 收藏

               摘要: JDK1.5引入的泛型,減少了類型強轉(zhuǎn)的代碼,增加了編譯檢查,提高了代碼的健壯性。
          但在某些情況,泛型檢查會出乎意料的“丟失”,由此可引發(fā)難以發(fā)現(xiàn)的bug。  閱讀全文
          posted @ 2011-05-31 10:31 Atea 閱讀(691) | 評論 (0)編輯 收藏

          如果別人只是讀取數(shù)據(jù),F(xiàn)OR UPDATE就不會鎖定資源不讓他們讀
          sum,count等函數(shù)為表鎖
          null不等于任何值,包括它自己
          盡量不要使用LONG型字段,而考慮使用CLOB
          與不可重復(fù)讀的區(qū)別在于:在幻像讀中,已經(jīng)讀取的數(shù)據(jù)不會改變,只是與以前相比,會有更多的數(shù)據(jù)滿足你的查詢條件
          客戶端發(fā)出的語句(如INSERT INTO)是原子性的
          應(yīng)慎用IMMEDIATE約束。一條語句可能會使表中的各行暫時“不一致”,這是很自然的。
          一般認為,用更新級聯(lián)來修改主鍵是很不好的做法
          應(yīng)手動給外鍵加索引,否則會引起子表的表鎖。
          優(yōu)化期會對視圖的來源表使用查詢。所以,對視圖加索引不如直接對來源表進行索引優(yōu)化。

          無法通過頻繁提交來“節(jié)省”undo空間,所以沒有必要在循環(huán)中提交。
          1、事務(wù)的粒度(時長)應(yīng)設(shè)計的盡可能小(短)
          2、事務(wù)不是稀缺資源,所以不要在循環(huán)中提交
          以上2個說法都正確,并不矛盾:
          Re1: 事務(wù)過大,會在rollback時消耗大量資源
          Re2: 循環(huán)提交會頻繁IO

          性能調(diào)優(yōu),應(yīng)首先嘗試減少查詢的運行時間,其次再考慮設(shè)置參數(shù)等。
          查詢中最好手動加上order by
          索引組織表(IOT)是存儲在索引結(jié)構(gòu)中的表,適合OLAP應(yīng)用。IOT不存在主鍵的空間開銷,因為索引就是輸據(jù)。
          位圖索引適用于高度重復(fù)而且通常只讀的數(shù)據(jù)(在OLTP中慎用,涉及到并發(fā)性)。在讀密集的環(huán)境中能很好的工作,但極不適用于寫密集環(huán)境。
          僅當要通過索引訪問表中很少的一部分行(很小的一個百分比)時,才使用B*索引。每個唯一約束應(yīng)該至少有一個確實唯一的NOT NULL列。B*樹索引不會對一個完全為NULL的項加索引。

          http://atealxt.appspot.com/article/20110317/book_read_note_oracle_database_9i10gand11g_programming_techniques_and_solutions.html
          posted @ 2011-03-17 22:19 Atea 閱讀(446) | 評論 (0)編輯 收藏

               摘要: 使用"help" -> "Check for Updates", 選擇所有eclipse插件,升級。
          升級完重啟時,發(fā)生錯誤,IDE啟動失敗,報錯。


          解決辦法:
          修改文件 "ECLIPSE_HOME\configuration\config.ini"。  閱讀全文
          posted @ 2011-03-09 16:17 Atea 閱讀(1799) | 評論 (0)編輯 收藏

               摘要: 限于自己的水平還未達到DBA級別,只能先以應(yīng)用為主的角度讀了。
          也許過幾個月再回來重讀,會有另一番心得。

          筆記包含索引、事務(wù)與鎖、備份及其他四類。
            閱讀全文
          posted @ 2011-02-28 23:16 Atea 閱讀(535) | 評論 (0)編輯 收藏

          從今天開始,把讀書時做的標注集中地做個摘抄,在加深印象的同時也能全面地了解一下自己在讀該書時的側(cè)重點及收獲。
          首先,逐步地把以前的整理出來:)

          • 細節(jié)應(yīng)該依賴于抽象
          • 在包的依賴關(guān)系圖中不允許存在環(huán)
          • 如果在迭代結(jié)束的時候,90%的任務(wù)已被完成,但沒有一個素材是被完全完成的,這將是噩夢一般的情景
          • SINGLETON模式強制結(jié)構(gòu)上的單一性。它防止創(chuàng)建出多個對象實例。相反,MONOSTATE模式則強制行為上的單一性,而沒有強加結(jié)構(gòu)方面的限制。
          • VISITOR模式如同一個矩陣
          • Builder模式著重于一步步構(gòu)造一個復(fù)雜對象,而Abstract Factory著重于多個系列的產(chǎn)品對象。Builder在最后的一部返回產(chǎn)品,而對于Abstract Factory來說,產(chǎn)品是立即返回的。
          http://atealxt.appspot.com/article/20110209/reading_notes_agile_software_gof.html
          posted @ 2011-02-09 23:27 Atea 閱讀(343) | 評論 (0)編輯 收藏

          錯誤日志為:
          java.lang.NullPointerException
              at oracle.jdbc.dbaccess.DBData.clearItem(DBData.java:
          431)
              at oracle.jdbc.dbaccess.DBDataSetImpl.clearItem(DBDataSetImpl.java:
          3528)
              at oracle.jdbc.driver.OraclePreparedStatement.checkBindTypes(OraclePreparedStatement.java:
          3271)
              at oracle.jdbc.driver.OraclePreparedStatement.setNull(OraclePreparedStatement.java:
          1322)
              at org.apache.commons.dbutils.QueryRunner.fillStatement(QueryRunner.java:
          197)
              at org.apache.commons.dbutils.QueryRunner.batch(QueryRunner.java:
          122)

          也是網(wǎng)上搜了半天,查了不少原因,未果。
          最后試著更新了一下jdbc驅(qū)動,原來是oracle較早版本的jdbc驅(qū)動bug所致。
          去官網(wǎng)下載一個所對應(yīng)oracle版本的最新jdbc驅(qū)動就OK了。

          posted @ 2010-12-13 16:05 Atea 閱讀(1242) | 評論 (0)編輯 收藏

               摘要: 傳統(tǒng)的"Return to Top"置于頁面底部或指定位置,點擊后返回頁面頂部。
          但其存在諸多不便:
          1、頁面頂部必須定義一個相應(yīng)的錨點,其本身也會占用DOM空間,很容易發(fā)生返回的不是絕對的頂部而是該錨點(滾動條會稍微向下一點,而不是在0的位置)
          2、如果頁面很長,想在滾動條任意處回頂部會變得難以處理。

          使用jQuery能大大改善這一用戶體驗。本文章將能做到:
          "Return to Top"在頁面初始化時不顯示,當移動滾動條時出現(xiàn)并隨滾動條位置變化而變化。
          點擊"Return to Top"頁面移動到頂部,當滾動條到頂部時"Return to Top"自動隱藏。
          以上均伴有動畫效果。  閱讀全文
          posted @ 2010-05-13 11:14 Atea 閱讀(2174) | 評論 (2)編輯 收藏

               摘要:
          首先來預(yù)熱一下:)
          System.out.println(2.00 - 1.10);
          System.out.println(2.00d - 1.10d);
          System.out.println(2.00D - 1.10D);

          答案
          // 0.8999999999999999
          // 0.8999999999999999
          // 0.8999999999999999
          PS:JAVA Puzzlers(Puzzle 2)

          那么,問題是:
          一個浮點數(shù)X,存到DB里是305.35,頁面顯示305.34
          X = ?

          DB用的是MySQL,字段類型是FLOAT(8,2)
          后臺框架用的是Hibernate
          前臺顯示用的是JSTL tag
            閱讀全文
          posted @ 2010-01-18 12:58 Atea 閱讀(1701) | 評論 (0)編輯 收藏

               摘要: UltraEdit提供了正則表達式的查找與替換,靈活使用可以節(jié)省工作量

          使用方法是:^(正則表達式^)
          匹配的話,按使用正則表達式的數(shù)量,匹配結(jié)果為^1、^2并以此類推。  閱讀全文
          posted @ 2009-11-12 10:14 Atea 閱讀(310) | 評論 (0)編輯 收藏

               摘要: PDF不像EXCEL那樣靈活,要想處理動態(tài)數(shù)據(jù),基本有2種方法
          1、純程序畫
          風險較大,可行性低
          2、把模板里的動態(tài)部分單獨做成模板
          使用Foxit PDF Editor編輯PDF模板元素,把動態(tài)數(shù)據(jù)部分的模板按一條(一行)提取出來單獨做一頁,使用時動態(tài)引入。  閱讀全文
          posted @ 2009-10-30 15:41 Atea 閱讀(616) | 評論 (0)編輯 收藏

               摘要: Spring-MVC如何使用攔截器,官方文檔只給出了非注解風格的例子。那么基于注解風格如何使用攔截器呢?
          基于注解基本上有2個可使用的定義類,分別是DefaultAnnotationHandlerMapping和AnnotationMethodHandlerAdapter。  閱讀全文
          posted @ 2009-09-20 20:23 Atea 閱讀(7272) | 評論 (0)編輯 收藏

               摘要: XDoclet是一款開源的代碼自動生成引擎,支持很多框架的代碼自動生成。
          而XDoclet2作為Maven2的插件,支持Hibernate3的pojo->xml的代碼自動生成。配合ant與Hibernate Tool API,可以實現(xiàn)pojo<->xml<->db schema的相互轉(zhuǎn)化。  閱讀全文
          posted @ 2009-08-01 22:35 Atea 閱讀(1115) | 評論 (2)編輯 收藏

               摘要: 1. org.datanucleus.store.exceptions.NoTableManagedException
          2. org.datanucleus.exceptions.NucleusUserException A parent cannot be established or changed once an object has been persisted.
          3. java.lang.IllegalArgumentException: can't operate on multiple entity groups in a single transaction
          4. 404 happened when visit online but ok in local environment
            閱讀全文
          posted @ 2009-06-30 15:49 Atea 閱讀(524) | 評論 (0)編輯 收藏

               摘要: 地址是: http://atealxt.appspot.com/  閱讀全文
          posted @ 2009-06-24 15:09 Atea 閱讀(558) | 評論 (1)編輯 收藏

               摘要: 替換前: aaa[code:java]bbb[/code]ccc
          替換后: aaa<pre class="brush:java;">bbb</pre>ccc  閱讀全文
          posted @ 2009-06-12 11:11 Atea 閱讀(365) | 評論 (0)編輯 收藏

               摘要: 1. pojo compile warning
          2. com.google.apphosting.api.ApiProxy$CallNotFoundException
          3. org.datanucleus.exceptions.NucleusUserException
          4. java.lang.NoClassDefFoundError: javax/naming/NamingException
          5. java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.String
          6. one to many relationship doesn't work   閱讀全文
          posted @ 2009-06-04 12:20 Atea 閱讀(625) | 評論 (0)編輯 收藏

               摘要: s2dao是基于seasar2的orm框架,使用簡單且功能比較強大。官方網(wǎng)站為http://s2dao.seasar.org/,中英日文檔皆有。
          如果對hibernate望而生畏,而只是尋找一個替代jdbc的工具的話,s2dao算是一個不錯的選擇。某種程度上來講,s2dao可能會比較像ibatis。  閱讀全文
          posted @ 2009-05-07 17:08 Atea 閱讀(856) | 評論 (0)編輯 收藏

               摘要: amCharts是一款前臺Flash報表工具。
          由于使用了Flash ,可以做出不少華麗的動畫效果,使報表數(shù)據(jù)顯得生動立體。  閱讀全文
          posted @ 2009-03-29 20:23 Atea 閱讀(4263) | 評論 (0)編輯 收藏

               摘要: struts2 Action里面的getter方法會在Action結(jié)束后被自動調(diào)用。
          在Ajax調(diào)用Action返回json數(shù)據(jù)等的情況,很可能給函數(shù)起個getXXX的名字,而這就可能發(fā)生錯誤了。  閱讀全文
          posted @ 2009-02-16 20:09 Atea 閱讀(390) | 評論 (0)編輯 收藏

               摘要: 一段hibernate的SchemaExport,原來在win下運行正常,放到linux下就出了問題,在插入數(shù)據(jù)的時候發(fā)生了異常。
          查看DB,發(fā)現(xiàn)表引擎是MyISAM,而不是期望的InnoDB。我的代碼是在用到batch的時候(Session.flush())才出的錯,查了查MyISAM的資料,應(yīng)該就是這個了。  閱讀全文
          posted @ 2009-01-31 10:36 Atea 閱讀(3876) | 評論 (2)編輯 收藏

               摘要: 本文介紹了PL/SQL的基本使用方法,包括PACKAGE、FUNCTION的書寫及調(diào)用,游標的使用等。  閱讀全文
          posted @ 2008-12-26 20:22 Atea 閱讀(355) | 評論 (0)編輯 收藏

               摘要: 今日看了《Java Concurrency in Practice》的第6.2.5章節(jié),才知道java.util.Timer真是問題多多啊。
          Timer任務(wù)執(zhí)行過程中,如果下一次計時到了,會產(chǎn)生任務(wù)沖突問題。這在多線程的環(huán)境下會更加突出。
          另外如果Timer任務(wù)執(zhí)行過程中發(fā)生異常,Timer仍然會繼續(xù)工作!

          jdk5的java.util.concurrent.ScheduledExecutorService很好的解決了以上問題。  閱讀全文
          posted @ 2008-11-25 09:33 Atea 閱讀(4414) | 評論 (0)編輯 收藏

               摘要: 在ORACLE中,CHAR類型的字段值會自動補足空格。所以當其作為條件時,就有可能查不出想要的數(shù)據(jù)。
          如果不允許改DB設(shè)計的話,那就用RTRIM來解決吧。  閱讀全文
          posted @ 2008-11-11 14:45 Atea 閱讀(4074) | 評論 (4)編輯 收藏

               摘要: 最近的項目使用了Prototype。
          基本不用在頁面寫諸如onclick=***的代碼了,在js最后綁定上body onload,然后把控件和事件的綁定統(tǒng)一寫到body onload中。這樣頁面代碼干凈了不少,事件也能夠得到統(tǒng)一管理,蠻優(yōu)雅的。  閱讀全文
          posted @ 2008-11-04 09:59 Atea 閱讀(1020) | 評論 (0)編輯 收藏

               摘要: 注意:
          1. 如果bean被aop監(jiān)聽的話(aop:pointcut),bean的init-method是不會執(zhí)行的(構(gòu)造函數(shù)會執(zhí)行)。
          2. 如果bean是其他bean的field(ref bean),init-method和構(gòu)造函數(shù)都會執(zhí)行。  閱讀全文
          posted @ 2008-09-19 15:48 Atea 閱讀(574) | 評論 (0)編輯 收藏

               摘要: 辦法1:
          修改eclipse_home/your_workspace/.metadata/.plugins/org.eclipse.wst.server.core/servers.xml
          辦法2:
          Double-click the server in the Servers view to open the server editor. Then expand the Timeouts section on the right side of the editor.  閱讀全文
          posted @ 2008-09-03 18:07 Atea 閱讀(3887) | 評論 (3)編輯 收藏

               摘要: 1."rich" textarea editor.
          簡單的可即時變色的iframe editor。

          2.Advertisement Board.
          在CSDN看到的投標項目的廣告滾動條,用的是iframe + window.scrollBy,挺好玩的。
          自己把源碼做了點改進,加了個暫停滾動的功能。  閱讀全文
          posted @ 2008-08-25 18:46 Atea 閱讀(2733) | 評論 (0)編輯 收藏

               摘要: 現(xiàn)有一程序,啟動時需要分別點擊執(zhí)行a.bat和b.bat。每次都要雙擊兩回,著實不方便,于是編寫了一個bat文件直接來調(diào)這兩個文件。  閱讀全文
          posted @ 2008-08-22 17:29 Atea 閱讀(2082) | 評論 (0)編輯 收藏

               摘要: 網(wǎng)上沒找到符合需求的資料,前后鼓搗了兩天才弄好。
          《Spring in Action》中的aop例子-吟游詩人(Minstrel)雖然生動,但代碼不全,可害苦我了:<
          后又結(jié)合spring reference 6.2節(jié)看了半天,才琢麼出來。  閱讀全文
          posted @ 2008-08-18 16:52 Atea 閱讀(1990) | 評論 (0)編輯 收藏

               摘要: 筆者近期正在使用Struts2開發(fā),在這里把個人心得小結(jié)一下。
          1.重復(fù)提交問題。
          2.在web page中使用for循環(huán)的問題。
          3.數(shù)據(jù)的頁面顯示問題。
          4.自定義interceptor的問題。  閱讀全文
          posted @ 2008-08-04 17:47 Atea 閱讀(3310) | 評論 (7)編輯 收藏

               摘要: Hibernate Session獲取方法大致有兩種:
          方法1. SessionFactory.openSession();
          方法2. SessionFactory.getCurrentSession();
          以前自己寫代碼都是用方法1取session。今天學會了方法2,以后就可以用它來提高效率了
          ...  閱讀全文
          posted @ 2008-07-28 16:57 Atea 閱讀(3471) | 評論 (0)編輯 收藏

               摘要: 通過以往的學習我知道Super po = new Sub()的時候"Method is Sub's,Field is Super's"。但碰上域限定符時就又糊涂了。顯然是知其然不知其所以然。
          而當我用"javap -verbose"調(diào)試并分析日志的時候,我終于明白了
          ...  閱讀全文
          posted @ 2008-07-22 17:32 Atea 閱讀(359) | 評論 (0)編輯 收藏

               摘要: 接上篇,下面是剩余Client端的部分代碼...  閱讀全文
          posted @ 2008-07-18 12:23 Atea 閱讀(1078) | 評論 (0)編輯 收藏

               摘要: 年初正是JavaFX熱的的時候,于是便學習了相關(guān)基礎(chǔ)編程,作了個小聊天室。
          雖然NetBeans 6.0支持JavaFX集成,但Editor的完成度并不高。當時為了javafx和java class之間互相傳值可真是費了不少周折:<
          更多JavaFX Script?資料請見官網(wǎng):https://openjfx.dev.java.net
          Matrix上有不少中文資料:http://www.matrix.org.cn
          主要邏輯:...  閱讀全文
          posted @ 2008-07-18 12:19 Atea 閱讀(1076) | 評論 (0)編輯 收藏

          主站蜘蛛池模板: 会同县| 汝阳县| 洛浦县| 贡觉县| 石家庄市| 济宁市| 门头沟区| 塘沽区| 太仓市| 萝北县| 崇义县| 济宁市| 曲阳县| 湟中县| 通许县| 巴彦淖尔市| 弋阳县| 阜新| 菏泽市| 成安县| 蕲春县| 日喀则市| 长葛市| 清徐县| 安仁县| 左贡县| 共和县| 木兰县| 弋阳县| 怀化市| 冕宁县| 美姑县| 子洲县| 广河县| 兴安盟| 苗栗市| 海原县| 万州区| 获嘉县| 香港| 航空|