雲栖社群特别邀請了6位Java專家來為社群小夥伴解答難題
你也有問題嗎,快來——》 向專家提問
整理的專家已回複優質問題:
問:剛學完html/css/js的新手學習servlet、jsp需要注意哪些問題?我要做一個讀書網的jsp小程式,要實作登入注冊,還要實作一個把表單裡的書籍添加購物車并可以删改的功能。在實際操作中怎麼實作添加購物車的功能?大概思路是什麼?需要注意哪些問題?謝謝!
杜萬:購物車的功能特點是可以跨多個頁面添加不同的購物項,需要狀态保持。然後就是購物車要實作到哪個層次僅登入使用者可用,使用 JSP 的 Session,未登入使用者也可以用,使用 Cookie + Session,使用者再登入以後也可以用,使用資料庫存儲,為購物車構造一個資料結構......
詳細回答
問:為什麼流式處理架構都是 java 寫成的,JVM 是不是在流和批存在着特殊優勢。還有分布式資源排程,感覺Mesos 的成長速度跟不上 Yarn。這是為什麼?
墨玖:1.這個和storm、spark這兩個鼻祖有不可分割的關系。java8開始提供了很多流和的features。 2.在開源的世界裡 成長速度和關注度、資訊數量是成正比的,這一點你可以百度、google下。Yarn的資訊量級大一級。關于 mesos 和 yarn的比較.......
問:現在apm主要采用的是基于javaagent機制做位元組碼層面的植入麼,主要涉及哪些知識點,針對不同web容器或者中間件如何植入呢
項籍:javaagent探針加載的jar包由SystemClassloader加載,通過classfile transform入口變更位元組碼,而我們往往通過插樁的方式埋探針,執行流程通過樁代碼路由到APM的核心邏輯,但是這裡面有個問題在于樁代碼的執行過程中如何通路宿主中的類和方法(類似于HttpservletRequst)......
問:Java的反射實作是委派實作還是動态實作?委派實作和動态實作是按照什麼機制去識别實作的?即什麼情況下用委派實作,什麼情況下動态實作?
徐雷:1.Java的反射機制應該都是運作時動态實作的,動态通過中繼資料擷取類型資訊,建立對象,實作調用。2.動态反射需要知道類名或者非法名關鍵字,中間夠基于哈希搜尋,快速定位類型或者非法資訊。3.Java的反射機制現在應用比較多的是動态代理proxy,主要是在RPC和AOP領域......
問:我想知道 Java 關于引用那一塊的知識:這些類要這麼展現出效果;強引用 弱引用 等等 的差別;這些類能做些什麼(實作那些功能)
鄭國城:你想了解的這些知識,很難用簡短的回答可以說清楚的,更多的希望你能多看看書或者其他人的部落格文章進行加深了解。這些引用主要是跟 GC 有關,你可以去看看了解 GC 和 JVM 的相關知識,這裡我簡單的說一下。Strong Reference(強引用):不會被垃圾回收器回收......
問:我的Java應用在運作時經常會出現記憶體溢出的情況,有沒有什麼要的診斷、追蹤和處理方法?
趙亞飛:可以使用阿裡巴巴開源的一個項目去診斷,Arthas 是Alibaba開源的Java診斷工具,深受開發者喜愛。當你遇到以下類似問題而束手無策時,Arthas可以幫助你解決......