JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Software Design » J2EE DP  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友    訂閱主題
reply to postflat modego to previous topicgo to next topic
本主題所含的標籤
無標籤
作者 Re:Core J2EE Patterns - Service Locator [Re:worookie]
im1000



版主

發文: 149
積分: 7
於 2003-10-08 01:10 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
Service Locator 最重要的功能
就是把 JNDI 的 i/o 次數減少
以及一些存放在 InitialContext 的變數讀入記憶體

這有什麼好處呢

IO 是系統開發人員及維護人員對於效能考量的痛
當我們拉出一些變數放到設定檔的時候
需要調校系統的時候,
只要輕輕鬆鬆使用 vi / notepad 就可以把系統調整到另一種狀況

另外 JNDI 可以修改去呼叫其他物件,
例如資料庫, 原本是 10.10.10.10 我改成 10.10.10.11
不需要去修改程式

但是每次都要去讀取 InitailContext
就會造成 "開檔" "讀檔" "關檔" ..... 不斷的發生
或許大家做的是小系統 不會感受到這個負載量
但是 file io 是非常耗 ram & cpu 的動作
而偏偏這些檔案, 又不是一直在變化的

所以, 我們會用 Cache , 通常是 static HashMap 放置 key - value 的型態
第一次讀取後就放到 HashMap 之中
當沒有修改時, 我們就直接根據 key 讀取 HashMap 的資料
不用再去做讀取 initialContext 的動作

為何 Service Locator 需要使用 Singleton 呢
因為我們要確信只有一份 HashMap 的資料
當修改 或 刪除 HashMap 中的資料,
不會有另外一份來搗蛋...


reply to postreply to post
話題樹型展開
人氣 標題 作者 字數 發文時間
7473 [精華] Core J2EE Patterns - Service Locator worookie 29 2003-09-11 02:19
6169 Re:Core J2EE Patterns - Service Locator worookie 86 2003-09-24 02:10
7574 Re:Core J2EE Patterns - Service Locator im1000 648 2003-10-08 01:10
» JWorld@TW »  Software Design » J2EE DP

reply to postflat modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8