摘要: 對于想使用Equinox來構(gòu)建OSGi應(yīng)用的同學(xué)們而言,掌握Equinox是如何加載Bundle中的Class無疑是相當重要的,這樣在碰到各類ClassNotFoundException的時候也就有底了,否則可能出現(xiàn)的ClassNotFoundException會多的讓你非常的頭疼,本文提取自《OSGi原理與最佳實踐》,介紹下equinox是如何來加載Bundle中的class的。 閱讀全文
摘要: OSGi最吸引人的特性除了模塊化之外,就是動態(tài)化了,在我之前寫的OSGi實戰(zhàn)以及進階兩篇Opendoc中,都有相關(guān)的示例,但不知道大家有沒有注意,在兩篇Opendoc中都未提及到bundle本身的更新,而基本都是以新增服務(wù)實現(xiàn)的bundle以及停止服務(wù)時限的bundle為例,并且相對而言是個比較簡單的例子,動態(tài)化在java界更明確的詞也許是hot deployment,而hot deployment的實現(xiàn)并不容易,同樣,即使你采用OSGi,但也不代表你的應(yīng)用就具備了hot deployment的能力,在hot deployment上,完美的結(jié)果就是當更新完成后,新的執(zhí)行請求就在新的代碼邏輯上正確的執(zhí)行,就像沒發(fā)生過更新這回事樣,但實際要做到這樣的效果,遠沒這么容易,即使是基于OSGi也同樣如此,No magic & no silver bullet,在本篇blog中我們就來具體的看看。 閱讀全文
摘要: 在這篇blog中放置了我收集的一些網(wǎng)站架構(gòu)相關(guān)的PPT和文章,提供給大家下載,如果大家有相關(guān)的好的PPT、文章的話,也歡迎推薦給我,非常感謝,:),這篇blog的內(nèi)容也會隨著我收集的東西增加而變化,同時也會增加我對于這些PPT、文章的看法和評價。 閱讀全文
摘要: 把自己寫的兩篇opendoc和Book統(tǒng)一放入此blog中提供下載,避免占據(jù)我blog的兩個置頂位,:) 閱讀全文
摘要: 在使用OSGi時,有些時候會需要在OSGi容器外獲取OSGi服務(wù),加載OSGi容器加載的class,或者說需要內(nèi)嵌OSGi容器,本篇blog以一個簡單的例子來說明如何基于equinox實現(xiàn)OSGi容器的內(nèi)嵌,或者說通過程序來啟動equinox,同時也通過此例子展示下如何在容器外來獲取OSGi服務(wù)以及加載OSGi容器里面其他插件的class,同時還會附送一個如何讓OSGi容器里的插件能加載到OSGi容器外的類的方法。 閱讀全文
摘要: 此次QCon北京大會為期三天,總體而言,精彩紛呈,尤其是第二天,完全將大會的精彩推至了高潮,讓大家覺得值回票價,總結(jié)而言,這次大會是相當成功的,一次成功的大會不能缺少的有兩個要素:知名的嘉賓和精彩的Topic,無疑QCon北京大會很好的把握了這兩個要素。
知名的嘉賓,此次大會出現(xiàn)的嘉賓絕對足夠重量級,看看Title就嚇人了:Spring老大、ThoughtWorks首席科學(xué)家、Dojo creator、eBay搜索核心架構(gòu)師、Amazon云計算戰(zhàn)略師、淘寶首席架構(gòu)師、支付寶首席架構(gòu)師、豆瓣技術(shù)總監(jiān)、優(yōu)酷首席架構(gòu)師、網(wǎng)易有道技術(shù)總監(jiān)等等。
精彩的Topic,不是說嘉賓知名Topic就一定精彩的,不能不說,這次大會還是有些爆冷門的,嘉賓不是很知名,但演講的Topic確實還不錯,而且也不是說知名的嘉賓就一定能給出精彩的Topic,就像Martin Fowler這次的Topic,實在稱不上精彩,總體而言,這次大會并不缺少精彩的Topic,來分享下我的收獲。 閱讀全文
知名的嘉賓,此次大會出現(xiàn)的嘉賓絕對足夠重量級,看看Title就嚇人了:Spring老大、ThoughtWorks首席科學(xué)家、Dojo creator、eBay搜索核心架構(gòu)師、Amazon云計算戰(zhàn)略師、淘寶首席架構(gòu)師、支付寶首席架構(gòu)師、豆瓣技術(shù)總監(jiān)、優(yōu)酷首席架構(gòu)師、網(wǎng)易有道技術(shù)總監(jiān)等等。
精彩的Topic,不是說嘉賓知名Topic就一定精彩的,不能不說,這次大會還是有些爆冷門的,嘉賓不是很知名,但演講的Topic確實還不錯,而且也不是說知名的嘉賓就一定能給出精彩的Topic,就像Martin Fowler這次的Topic,實在稱不上精彩,總體而言,這次大會并不缺少精彩的Topic,來分享下我的收獲。 閱讀全文
摘要: JVM是Java程序的運行環(huán)境,因此對于JVM的掌握有助于理解Java程序的執(zhí)行以及編寫,尤其是運行時碰到的一些詭異問題,那么怎么樣能考察自己對于JVM關(guān)鍵知識點的掌握情況,幫助學(xué)習(xí)JVM機制呢,在這篇blog中來探討下。 閱讀全文
摘要: 在產(chǎn)品中有碰到過使用LinkedBlockingQueue.poll時超時很不準的現(xiàn)象,關(guān)鍵是這不是一般的不準,如果只是一點點不準的話也就勉強接受了,例如指定poll的超時時間為100ms,但最終執(zhí)行.poll這段代碼就花費了8000ms的現(xiàn)象,這篇blog就是展示下通過一段小小的代碼來重現(xiàn)這樣的現(xiàn)象,畢竟沒有重現(xiàn)是無法證明為什么會出現(xiàn)這樣的現(xiàn)象的。 閱讀全文
摘要: 本文摘自《構(gòu)建高性能的大型分布式Java應(yīng)用》一書,Garbage First簡稱G1,它的目標是要做到盡量減少GC所導(dǎo)致的應(yīng)用暫停的時間,讓應(yīng)用達到準實時的效果,同時保持JVM堆空間的利用率,將作為CMS的替代者在JDK 7中閃亮登場,其最大的特色在于允許指定在某個時間段內(nèi)GC所導(dǎo)致的應(yīng)用暫停的時間最大為多少,例如在100秒內(nèi)最多允許GC導(dǎo)致的應(yīng)用暫停時間為1秒,這個特性對于準實時響應(yīng)的系統(tǒng)而言非常的吸引人,這樣就再也不用擔(dān)心系統(tǒng)突然會暫停個兩三秒了。 閱讀全文
摘要: 記得自己在沒有進入互聯(lián)網(wǎng)行業(yè)之前,對于互聯(lián)網(wǎng)行業(yè)并不怎么感冒,總覺得互聯(lián)網(wǎng)行業(yè)的技術(shù)含量不高,沒什么意思,值得進入互聯(lián)網(wǎng)行業(yè)了,才明白,原來互聯(lián)網(wǎng)行業(yè)的技術(shù)是這么的復(fù)雜,這么的困難,而構(gòu)建一個擁有巨大用戶量的系統(tǒng)無疑也會給自己帶來更多的成就感,記得自己剛進入互聯(lián)網(wǎng)行業(yè)的時候,才發(fā)現(xiàn)構(gòu)建一個高并發(fā)、高性能、承受高壓力、高度可伸縮以及高可用性的系統(tǒng)要掌握的知識體系是在太多了,而且這些知識體系根本就不是在學(xué)校或是google、網(wǎng)絡(luò)中能夠?qū)W習(xí)到的,于是當時就想,如果能有一本書全面的介紹構(gòu)建這”五高“特性的系統(tǒng)需要掌握的知識體系,那將是多么的美好呀,畢竟很多的知識體系都是靠經(jīng)驗積累出來的,甚至可是說,是痛苦的教訓(xùn)等得出來的,但當然,要在一本書中完全講清楚所有的知識體系,自然是不靠譜的,但我想我會盡量在書中表達出自己的一些觀點、看法以及少少的經(jīng)驗吧,希望能夠讓更多的同學(xué)即使沒有大型系統(tǒng)的實際經(jīng)驗,也能掌握到一些大型系統(tǒng)所需的知識體系,那么我心甚慰了,由于本書需要寫的東西非常的多,預(yù)計在9月底完成寫作,估計要到明年春節(jié)后上市,:),以下先揭秘下本書的大概內(nèi)容,也請大家多多提出意見。 閱讀全文