J2EE中的分布式應用(Distributed Architecture in J2EE )
剛好在huihoo論壇看了一篇文章說到如何提高jboss的RMI/IIOP的效率問題,“有個應用是用戶端swing+j2ee SERVER ,跑在內網沒問題的。現在有個客戶,很多分公司,都是通過adsl(2m頻寬)連到總部。j2ee伺服器放在總部,感覺特別慢”,這個問題我現在還找不到解決的方法。剛好又看了令外一篇文章“eBays J2EE backend serving over 400 million transactions a day” http://www.theserverside.com/news/thread.jsp?thread_id=20155&article_count=48 ebay居然可以用j2ee的架構支援支援這麼大的輸送量,的確驚人。
有一個思想,就是向上思想,分布式系應用。目前,在資料庫系統中,很多人的思維還是集中在資料庫效能提升上,如何使用專用資料庫語言,如何使用預存程序,甚至有的論壇軟體直接資料庫層編寫,這些都是單純的“向下思維”,把活向細處做,這種思維其實已經落後。使用緩衝Cache,多台分布式Cache,將資料庫資料放在記憶體中,既做到程式的資料庫操作通用性,不以來具體資料庫產品,又具有可拓展性和伸縮性。這才是一種新的向上思維,效能提升方向。http://www.theserverside.com/resources/article.jsp?l=DB_Break
這些j2ee的效能調整還有如何?分布式應用,對於我來說現在還是一些進階應用程式,我打算暫時先放在一邊,等打好基礎後再回來研究。
完美的說明了j2ee現有的分步應用的原理。
第三步中,當獲得對象的引用後,使用remote object和本地的對於client來說已經是透明的了。
現在有很多naming services,最常見的就是DNS,也就是我們平時用的網域名稱解譯器。還有如:RMI(java專用),COBRA,LDAP,NIS等。JBoss就是採用RMI作為它的naming services。
文章引述:“Serialization and Deserialization are the same as marshalling and unmarshalling for those familiar with RPC terminology.”。
Java Naming Directory Interface (JNDI) Architecture
J2EE使用JNDI的API訪問,有了這些api之後對於名字服務的調用就相對透明了,以後名字服務應用無論換做什麼都無妨。