? ? 先來說一下為什么要寫jetty源碼分析的文章,主要來源于幾方面的原因,這幾方面我會介紹一下,我覺得這個可能比讀懂jetty的源碼更重要,知之者不如好之者,好之者不如樂之者,我談不上樂之者,但是還能算是好之者。
? ? ?第一方面是因為我們的servlet容器用的是jetty,而且有一次我在開發(fā)的時候不知道改了哪個參數(shù),導(dǎo)致啟動不起來了,于是浪費了好幾個小時才啟動起來,于是從那個時候我就決定要加強(qiáng)對jetty的理解。最好的理解jetty的方式就是閱讀jetty的源碼,jetty是用java寫的,我們也都是java程序員,閱讀它的源碼也不存在太多的代溝。
? ? ? 第二方面是出于對知名開源項目本身的一點喜歡吧,別人把代碼都開源出來了,自己都沒有讀過,所以就準(zhǔn)備開一個系列的閱讀源碼的文章,來逐漸把主流的項目的源碼都閱讀以下。俗話說的好,他山之石可以攻玉,互相借鑒以下嘛。
? ? ? 第三方面則是jetty本身比較好懂,他不想某些開源項目的代碼量那么龐大,而且邏輯錯綜復(fù)雜,jetty的設(shè)計就決定了它比較容易理解和拆分,因此我們用相對較短的時間就可以閱讀完它的所有代碼。
? ? 最后說一下這個項目的github地址在:https://github.com/xinxing0913/jetty-note ,歡迎大家star和watch。
? ? ?我的微信是xinxing0913,歡迎探討jetty源碼方面的事情。