@nn
看你要理解到什么樣的程度了,可以先讀這本書:深入Java虛擬機(jī),或者:深入理解Java虛擬機(jī),個人感覺從理論的角度,第一本更好,從實戰(zhàn)的角度,第二本也還不錯。如果你需要再深入的話,那就去讀虛擬機(jī)的源碼好了。。。。
re: Log4J引起的程序“裝死” DLevin 2015-08-18 20:16
@otaku119
關(guān)于這個:
為何不使用以下的方法:
log4j--------->log4j(syslogd)->HDD
所有外部程式,透過log4j的SOCKT方式傳輸
不是完全理解”外部程式“在這里的實際意思,如果沒理解錯,我們的想法可能是類似的,把Log推到遠(yuǎn)端,主要的目的是把Log信息集合在一起,方便以后查找分析。讓每個程序自身去”推“Log,增加這個程序和”推”Log這個動作的耦合,還不如程序自己打印自己的Log到本地,而“推”這個動作本身交給一個專門的程序(Job)去做,這個專門的程序可以是一個簡單的腳本定期的拷貝Log文件到指定的服務(wù)器,或者如果有“實時”需求,實現(xiàn)一個FileWatcher功能。
re: Log4J引起的程序“裝死” DLevin 2015-08-15 12:52
@otaku119
多謝“踢館”以及NFS的資料,木有仔細(xì)研究過NFS,因而只是憑自己的經(jīng)驗和道聽途說,所以不做過多評論。
關(guān)于多個Log4J,不確定我是否理解這個問題,憑我理解的方向,每個進(jìn)程有N個線程,大部分的“用戶線程”都需要寫日志,因而這里有多個;然后我們一臺機(jī)器上有M個進(jìn)程(節(jié)點)在跑;再次,有Y臺機(jī)器共享相同的NFS目錄。
個人猜測,syslogd沒人用網(wǎng)絡(luò)磁盤來存放資料也會和性能有關(guān)?如果有類似的需求,使用另一個Job將跟新的日志推到網(wǎng)絡(luò)磁盤上的設(shè)計會更加合理,耦合更低,而且也更加輕巧?:)
@otaku119
1. 在linux里的ping可以統(tǒng)計一段時間內(nèi)的平均響應(yīng)時間,雖然是一個簡單的統(tǒng)計值,而且我的樣本不大,不過我原本的目的就是給自己一種大概網(wǎng)絡(luò)性能的概念,以幫助做一些簡單決策。至于TCP的握手、重傳、序列之類的,那是基于網(wǎng)絡(luò)之上的邏輯,這個影響因素太多,我覺得不是幾個指標(biāo)能說明的,而且也已經(jīng)超過我的當(dāng)下的能力范圍了。自從做現(xiàn)在這個系統(tǒng)以及最近在研究的Hadoop、HBase框架之后才開始關(guān)注網(wǎng)絡(luò)的東西,還一直想找個懂網(wǎng)絡(luò)的大牛取經(jīng)。。。。
2. 這個我到大概有知道,只是不知道里面具體邏輯,然后我們公司的網(wǎng)絡(luò)都是走VPN的,所以應(yīng)該會跨過這個?
3. EJB沒有去看過,所以不做評論,不過同步是業(yè)務(wù)驅(qū)動的,要實時同步,對我們來說選擇不多。
4. 國內(nèi)一般外企都是直接VPN的吧,這是整個公司Infrastructure相關(guān)的東西,不是我等屌絲可以考慮的事情。。。。
cacti、MRTG都木有用過,我這幾天去了解一下,多謝。
最后,期待你關(guān)于這方面的BLOG,求鏈接?
@otaku119
都是好問題啊,說實話,我對網(wǎng)絡(luò)的了解并沒有那么深入,所以簡單回答一些我知道的。
1. 我其實只是簡單的使用ping做統(tǒng)計測試的,所以可以認(rèn)為是使用ICMP方式。
2. SH到NY的這段明文傳送我不了解,有更詳細(xì)的信息可以共享一下不?
3. 我們提供intranet服務(wù),但是其實做的就是部分CDN的功能,只是我們的用戶是固定的,所以只需要把數(shù)據(jù)分發(fā)到相應(yīng)的數(shù)據(jù)中心即可。
4. VPN是必須的,數(shù)據(jù)本身都比較敏感,同步是為了性能,如上面所說的,部分類似CDN的功能。
話說多謝你的問題,我好像對我的系統(tǒng)有另一種理解了。:)
@g897
final能控制回收流程?你記錯成finalize了?Java哪來的全局變量,又哪來的不會自動回收的說法?
re: 深入源碼之SLF4J DLevin 2014-11-01 08:53
不過,你可能要問你自己一個問題,為什么會存在兩個橋接包?貌似木有神馬意義啊~@zhanjindong
re: 深入源碼之SLF4J DLevin 2014-11-01 08:52
能想到的一種方法,控制兩個橋接包在classpath中的順序~@zhanjindong
re: 深入Jetty源碼之HttpParser DLevin 2014-05-15 13:54
用StarUML@jptan
代碼沒有貼全,TestHandler和OtherHandler都是Test類中的內(nèi)部類,而_history是Test類的成員@regale
re: 深入Log4J源碼之Log4J Core DLevin 2014-01-14 22:52
其一,我不是大神,其二,不是Java之路,語言是工具,重要的是在解決方法的思路和模式,其三,多學(xué)習(xí)、思考設(shè)計模式,要變通,多看源碼,理解整個框架思想,重要的是把路走通,不是把代碼看完。。。。。@小梁
re: 深入Guava源碼之Stripe DLevin 2014-01-02 09:45
用StarUML畫的~@acha
Buckets是代碼中的table數(shù)組,它的每個元素是一個Entry鏈,所以叫buckets@David
re: Void類的用法 DLevin 2013-10-08 22:50
它類似一個占位符,用于模擬void類型,因而不可是實例化,只有null值,至于好處貌似就是它的用途把~~@name
恩,我貌似表述的有點繁瑣了,你這個解釋更加簡潔明了一些~~~~@瘋狂
我感覺應(yīng)該不是生命周期引起的,Java里的生命周期是由虛擬機(jī)管理的,所以局部變量和外部類實例難說那個生命周期更長,在你給的鏈接中,這段話到是一個蠻好的解釋:So Java could copy the value of the variable w/o bothering with this compiler error, but it instead forces you to declare the variable as final to tell you "hey, remember it gets copied into the inner class, so if you could change it afterwards, then you get a severe inconsistency. So you can't change it, and we're clear with that." @tester
re: Java中的裝箱與拆箱 DLevin 2011-07-26 01:12
It really is, but it is not so old for a new guy like me, especially for the cache strategy applied by the compiler. :)@AlleNny
re: equals方法實現(xiàn)小記 DLevin 2011-06-30 22:18
@Lancelot
呵呵,見笑了,對commons里面的內(nèi)容還真不了解,有計劃要好好研究一下那里的內(nèi)容,可惜最近一直沒時間,多謝哈~~~~
re: equals方法實現(xiàn)小記 DLevin 2011-06-30 00:55
@過路客
嗯,是寫錯了,多謝哈,架構(gòu)那事就不用再提了,算我筆誤,嘿嘿~~~
re: equals方法實現(xiàn)小記 DLevin 2011-06-30 00:41
@jim
呵呵,雖然對第二段的表達(dá)方式不怎么贊同,但是你的觀點我還是非常認(rèn)同的,其實我從來沒有認(rèn)為我是一個架構(gòu)師,雖然我一直在往這個方向努力,不過還有好長一段路要走,事實上,我現(xiàn)在都在避免談?wù)撐抑暗哪嵌谓?jīng)歷(這篇文章是沒多想就寫上了,呵呵)
re: equals方法實現(xiàn)小記 DLevin 2011-06-30 00:28
@Lancelot
從開始看Java開始,一直認(rèn)為apache是一個偉大的組織,里面有很多我們能想得到的工具和框架。有打算以后花一段時間好好研究一下里面的代碼。這里的代碼只是對自己經(jīng)歷的一種記錄,無他~~~
BTW:這兩個方法我確實也是不知道的,學(xué)習(xí)了~~~~