文章發表

發表於Windows & .NET MAGAZINE 國際中文版雜誌 2005 年五月號  作者:葉建廷

引言:

XML 豐富的資料表達方式,儼然成為後 PC 時代最主要的溝通語言,各大 DBMS廠商設計新一代資料庫系統時,無不考慮將對XML 支援程度列為重大的課題。Web Services 則是以 SOAP 協定實現 XML 資訊交換的最佳方式,本文探討主題即是如何以 Web Services實作多層式架構存取 SQL Server的資料。 

觀察中大型企業對於Web應用程式設計上,有效率的資源應用及資訊的安全與否是企業非常重視的事情!一般不可能使用單純的 Client -Server架構,如圖 1,兩層式架構 (Two-Tier) 雖然能滿足客戶瀏覽的基本需求,但是卻會面對許多麻煩的問題:

  1. 執行效率容易遇到瓶頸:Web Server 除了網頁資訊的傳遞,還必須負擔所有的伺服端商業規則的執行,若伺服器的資源耗盡時,擴充性低。
  2. 程式重複使用性低:若多人一起開發Web應用程式,相同的邏輯的程式因為沒有元件化,無法達到重複使用的益處。
  3. 資料庫危險性升高: Web Server 直接與資料庫連線,若連線方式撰寫於網頁中,容易導致資料庫的帳號及密碼外洩。就算是使用 windows 帳號的認證的連線方式,風險仍高,因為萬一 Web Server 被入侵了,資料庫相對的也等於承認駭客的連線,也就完全沒有任何的防備了。 

    兩層式架構 

1

至於多層式架構 (N-Tier),如圖 2,則能解決以上所面臨到的問題:

  1. 執行效率可提升:因為將商業邏輯移交由元件伺服器負責,可藉由硬體的擴充,達到效能的提升,甚至是負載平衡。
  2. 程式重複使用性高:相同的邏輯的程式都已元件化,程式可直接呼叫使用元件,減少程式開發的負擔。
  3. 資料庫危險性降低:不直接與資料庫相連接,存取資料庫一定要透過元件,以參數傳遞給負責的相關元件處理,而不能以SQL 語法直接要求資料庫動作,減低資料庫控管的風險。

多層式架構

2

多層式架構並不是新的課題,只是多年的工作經驗觀察,會認真思考以 Microsoft DNA 來規劃的人還是不多。可能因為習慣於方便的開發模式及開發時程的要求,導致企業包袱越來越重,變更架構日益困難。另一方面,開發人員會選擇的程式語言肯定是多樣化的,COM技術架構雖好但是在跨平台呼叫元件上卻困難重重。雖有遠端程序呼叫 ( RPC ) 可使用,不過學習門坎較高,加上各語言有不同的元件,彼此互通性低。

Zabo 發表在 痞客邦 留言(1) 人氣()

Mr.Zabo 於 2004 年時,正在研究 ASP.NET 1.0,當初開發環境還停留在 Visual Studio 2002 正轉換到 Visual Studio 2003 的時期,想說要學就學個徹底吧!卯起來研究,看到微軟舉辦  ASP.NET 盟主爭霸戰,心裡癢癢的,就順便參加吧!沒想到一舉拿下該屆ASP.NET 盟主爭霸戰第一名,還獲得 XBOX 一台獎品的獎勵呢!

ASP.NET盟主爭霸戰.jpg

Mr.Zabo 於2004年榮獲 ASP.NET 盟主爭霸戰第一名


Zabo 發表在 痞客邦 留言(0) 人氣()

Mr.Zabo 在大學時雖非資訊本科系,但是在社團因為學校的要求,希望各社團負責人都能建置社團的專屬網站,那時當學校第二大社團的社長的我,第一次去上課,接觸到 HTML,沒想到就深深愛上它了!

大學畢業後因緣際會下看到了經濟部水資源局在舉辦青山綠水愛台灣的網頁設計比賽,在一股衝動下就號招了四位好友投入了網頁設計的比賽。在那個年代,網頁設計還是很新興的名詞喔!

沒想到第一次參加比賽就獲得了青山綠水愛台灣"最佳水資源獎"! 從此信心大增,決定全心投入網頁及程式設計的領域,並且去中興大學修習第二專長,這一入門到現在就是12年,真是時光飛逝阿~~

青山綠水獎狀.jpg

1998年青山綠水愛台灣"最佳水資源獎"得主


Zabo 發表在 痞客邦 留言(0) 人氣()

«123