Re: [系統] 請問資料庫中介軟體為何?

看板Database (資料庫)作者 (沉默是金)時間16年前 (2008/07/07 10:31), 編輯推噓2(201)
留言3則, 3人參與, 最新討論串3/5 (看更多)
※ 引述《chrismaggie (中仔)》之銘言: : ※ 引述《chrismaggie (中仔)》之銘言: : 我去這個地方查到http://www.oreilly.com.tw/sample_chap/a034_09.pdf : 中介軟體的介紹: : “middle tier”又稱為中介軟體middleware,顧名思義,它是在連接之 : 間進行處理。促使人們廣為在client 和資料來源之間使用middle tier 的最大誘因, : 是我們能在middle ti er 中的軟體中置入所謂的商業邏輯。商業邏輯可以把複雜的 : 低階動作(更新資料庫表格)包裝成高階指令(下訂單),讓資料庫交易動作更容易 : 也更安全。 : 想像某個client 應用程式正在下訂單。如果沒有中介軟體,這個應用程式必須 : 直接連結到資料庫server 儲存訂單資訊。如果server 端有任何更改,不管是 : 換了機器、內部資料結構改變、或改用其他廠牌的資料庫,原來的client 端軟 : 體就不能用了。更慘的是,如果cl ient 端軟體稍有改變(不論是故意或意外 : 的),資料庫在收到對方付款之前不可能輸入訂單,也無法拒絕一筆正常的訂 : 單。 : 中介軟體能運用商業邏輯把訂貨流程抽象化。它接收訂單資訊(包括名稱、 : 地址、項目、數量、信用卡號等),檢查這些資訊是否有效,再把它們存入資 : 料庫。資料庫如果有改變,中介軟體也要跟著改變,但cli ent 端不必更動。即 : 使這個訂單資料庫臨時以一個單層的紀錄檔取代,中介軟體在client 端還是呈 : 現同樣的面貌。 : 中介軟體能把處理負載分散到不同的後端server 上(CPU server、檔案 : server、目錄server 等),從而增進交易效率。運用中介軟體,我們可以更加 : 有效的運用頻寬:client 不必在低速網路連結上自己一來一往和server 溝通, : 只要把要做的事情告訴中介軟體,讓它一次做完即可。 : Web上的中介軟體常以servlet 實作。Servlet 提供了一種簡便的途徑,讓利用 : HTML form或applet 建立的client 連接後端的伺服器。Client 可用HTTP 把需 : 求告知s ervlet,servlet 中的商業邏輯則透過後端伺服器來處理它的請求. : 我是覺得我寫的應該不至於全部的分數都沒有阿~我也是以3-tier概念去解釋 : 中介軟體.....這樣會全錯嗎...很擔心> < 發現我推文寫得有點模糊可能不能表達我的認知 要推文修正又太久,乾脆回文好了..... 所謂的中介層, 應該是指在資料處理model中, dao或manager的層級所提供的介面, 要以mvc來看的話 , 就是在c層. 而你指的phpmyadmin , 可以說是個dbms , 沒錯它的確是讓使用者透過某個介面去操作資料庫, 但是它並沒有進行商業邏輯的包裝跟抽象... (一) 使用者介面層 (二) 運算邏輯層 (三) 資料服務層 個人覺得這還是比較偏2-tier的概念,因為操作db實在是不能算是運算邏輯, 因為在db處理過程中 [下sql]是一種基本的邏輯 , 而phpmyadmin要進行大部份工作時,還是以使用者自行設計邏輯為主, 自己建立表格,自己處理查詢,等於(1,2)還是在使用者層級, phpmydamin只在處理資料服務層... -- 當然要說的話,從定義上是有介面就可以說是中介軟體, 只是人家接不接受這樣的定義而已. 你也可以說phpmyadmin有提供介面 , 底層可以自行修改以因應不同db的需求. but這很顯然跟我們一般認知的抽象處理有部分落差... -- I am a person, and I am always thinking . Thinking in love , Thinking in life , Thinking in why , Thinking in worth. I can't believe any of what , I am just thinking then thinking , but worst of all , most of mine is thinking not actioning... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.128.219.202

07/07 12:06, , 1F
通常,資料庫的中介軟體,優先想到的就是 ODBC、JDBC ...
07/07 12:06, 1F

07/07 16:20, , 2F
其實我第一個也是想到ODBC...=.=a
07/07 16:20, 2F

07/07 16:31, , 3F
ODBC +1 XD
07/07 16:31, 3F
文章代碼(AID): #18SO0Sse (Database)
文章代碼(AID): #18SO0Sse (Database)