Database 板


LINE

※ 引述《lisaforlisa (思思)》之銘言: : 請問一下版上的大大...>< : 主從式架構分為二階跟三階...到n階 : 看過書本... : 還是覺得二階跟三階有點懵懵懂懂的... : 我想知道中間的差異性 到底差在哪邊?? : 我只印象 資料庫書本的二階是 用戶端跟伺服端 : (代表要用該公司的資料庫...就要下載使用該軟體才有辦法使用) : 所以 存取度不佳 (如果多人同時上去連該資料庫 應該會當機吧?) (臆測) : 安全性有風險 (對離職的員工未改變其權限的話) : 三階是 用戶端 網頁伺服器 伺服端 : 是說用戶端透過瀏覽器 來與伺服端的資料庫連線 : 安全性較低 (因為連接網路就很容易被駭客攻擊 或是病毒的攻擊) : 可以降低系統對資料庫資源請求的負擔 (有看過但是不懂) : 請問還有什麼可以補充的嗎? (想離清一些觀念 做個分析><) : 麻煩各位大大的解答了了^^" (跪樣) 原則上,主從式架構在不同的系統上,會有不同的定義 站在資料庫系統(Database System)的角度, Database System 算 Server,其它都是 Client 無論你用 SQL Server 的 Enterprise Manager, 或是 JDBC、ODBC、ADO.NET,對 Database System 都是 Client 站在一個 Web 應用系統的角度(Web Application System), Web Server + Middle-Tier + Database Server 整個算是 Server 其它 Browser,或 Spider 程式,就算是 Client 了 但站在 Server 的角度,它又是 Multi-Tier 的架構 對於 A 是三階,B 是二階,其實隨著資訊技術的發展,階數沒有那麼重要 重要在於:每一層架構的定義,與其責任,以及要付出的代價與得到的效益 不過您提到二階與三階的差別,是有其歷史發展的 在 VB/Delphi 火紅的年代, 常見用 VB/Delphi 開發的 Desktop Application + Database,來開發系統, 需要付出維護 Desktop Application 的代價; 大多稱其為二層式架構。 在 Web 火紅的年代,常見用 Browser + Web Server + Database,來開發系統, 解決了 Desktop Application 維護的代價, 但需要要付出 Web Server 維護,以及 Web UI 開發的代價; 大多稱其為三層式架構 效能方面, 對 Desktop Application 而言,每個使用者要直接連資料庫, ,是比較不好的,原因是連資料庫就像發動車子,需要花費較大的成本。 對 Web Application 而言,每個使用者連到 Web Server, 由 Web Server 統籌對資料庫連線 所以站在 Web Application 的立場,採用 Connection Pooling 的方式, 當 Client 要求的時間分開時,可能用少數的連線,就可以滿足需求。 例:   User A 於 00:05 要求資料   User B 於 00:06 要求資料   User C 於 00:07 要求資料 對 Desktop Application,Database Server 需要建立三次 Connection 對 Web Application,Database Server 可能只需建立一次 Connection,然後讓 Web Application 在不同時間,使用同一個 Connection,因此效能會較好。 付出代價方面,若 Web Server 與 Database Server 在同一台機器, 兩方必要分享相同的系統資源(memory、CPU) 若分開兩台 Server,就要兩台 Server 的成本(建置、維護)要付出。 安全方面,與「程式設計」的安全模型考量比較有關, 而採用的系統架構,倒不是最重要的部份, 例如:SQL Injection 預防、無論 Desktop Application 連資料庫, 或是 Web Application 連資料庫,較差的設計,都會產生風險。 資訊安全是很複雜的議題,系統切割的層數越多,安全上的考量也就越多 目前主流的系統架構,當然也考量了基本安全的架構, 但資訊安全的根本,還是需要程式設計師不斷努力,去強化程式碼的設計 架構只能提供基本,已經廣為大眾所知的安全考量。 原則上,分層式的架構設計,是先為了解決責任複雜、開發維護成本的問題, 以及新功能的滿足(例:單機時代到 Web 時代), 經由良好的責任劃分,同時也可以為安全、效能帶來基礎的建設。 在 IT 的領域,層數只會越分越多,這是 IT 用來解決設計問題的唯一方法。 在 ORM 尚未成為主流前,程式設計師要自己寫存取資料(檔案、索引)的程式碼, 現在,有了獨立的關聯式資料庫系統,只要會 SQL,就能做出功能, 但資料庫系統的效能並不會比 Hard Code 還好。 若沒有良好的網路設定與維護,資料庫系統反成了一台可攻擊的伺服器。 當然現在的網路服務(無名小站、GMail),要是沒有現代的多層式架構, 實作將是相同困難的。 大多的書藉,都會提出分層的好處、新架構的好處,但一定會有代價。 隨著時間,您的體會將逐步提升 ^^ --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.198.7.188







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BabyMother站內搜尋

TOP