TechEd 2007披露協同開發技巧與新版Windows Server | ||
文/iThome (記者) 2007-10-10 | ||
韋帕颱風突來的攪局,讓原本為期三天的TechEd 2007,只剩兩天的行程,今年主題主要集中在Windows Server 2008、Visual Studio 2005 Team System(VSTS)。 | ||
| ||
濃縮的課程以Windows Server 2008及VSTS為主 來自微軟全球技術支援中心的邱英瑞,主講「以VSTS實踐測試導向開發」及「如何使用Visual Studio Team Tester找出網站效能問題」,從會後學員發問踴躍的情況來看,是非常實用的課程。由講師董大偉主講的「ASP.NET AJAX與Silverlight的完全結合」,是一堂釐清Silverlight、ASP.NET AJAX與ASP.NET三者之間的應用關係與技巧。 Windows Server 2008 唯讀網域控制站 強化遠端辦公室身分認證 對於遠端分支辦公室的AD部署與管理,更增加唯讀網域控制站(RODC)的概念,減少擔任DC(Domain Control)的伺服器負擔外,更提升遠端辦公環境AD認證的安全。 Windows Server 2008 網路政策服務 將IAS提升至政策管理 Windows Server 2003中IAS Server只是單純負責RADIUS部分,Windows Server 2008的NPS則能管控各種網路連線的措施及功能,除了處理RADIUS外,更能整合(NAP)功能,以政策管控的方式,限制用戶端電腦行為。 Windows Server 2008 Terminal Services 更強大的遠端連線服務 Windows Server 2008 Terminal Services除了加強遠端桌面連線的顯示畫面外,還能夠讓遠端電腦直接存取伺服器上的應用程式。新的TS能將可運作於Windows平臺的應用軟體, 透過網路分享給其他使用者,讓許多使用者能夠同時遠端連線執行應用軟體。 64位元Windows 朝64位元大步邁進 新的Server 2008持續朝64位元目標邁進。64位元的環境提供了更高的硬體擴充性。除此之外,64位元的系統需解決32位元的應用程式的相容性問題。 |
濃縮的課程以Windows Server 2008及VSTS為主 微軟一年一度TechEd的盛會,原本預計9月18日開始在臺北國際會議中心舉辦為期3日的活動。無奈突如其來的韋帕颱風,打亂了所有的行程。
在課程安排方面,今年主題主要集中在Windows Server 2008、Visual Studio 2005 Team System(VSTS),原本Visual Studio 2008和SQL Server 2008各有一堂課,Silverlight及WPF也有不少場次,都不幸被韋帕吹掉了。
拉攏資料庫程式開發人員,因應結構變更與測試需求
.NET平臺推廣至今,臺灣微軟近期罕見的不急著彰顯明年即將上市的新版功能,反而努力地推廣2005版的功能與精神,主要原因在於現在的Visual Studio已朝協同開發平臺發展,然而臺灣企業對於VSTS的神髓尚未完全消化與施展。
Visual Studio Team Edition for Database Professional在去年即已揭露,是VSTS針對資料庫專家推出的外掛程式(Plug-in)。主要的功能包括離線開發資料庫、自動產生測試資 料、資料結構的版本比對及重構等功能。
過去資料庫的應用,由於資料與結構(Schema)都儲存在資料庫中,因此任何結構上的調整都沒有留下記錄,這對資料庫的管理造成很大的風險。
於是透過Database Professional,VSTS結合TFS(Team Foundation Server)控管,資料結構的變更,可以受到專案等級的變更與組態管理。
加裝外掛後,在測試方面,VSTS提供資料產生器的功能,還可協助開發者產生測試的前╱中╱後各階段,包括T-SQL、VB及C#等3種語言的指令碼。例如測試前的環境準備、測試執行的功能,以及結束後清除資料。
微軟繼續鼓吹測試導向開發方法
軟體工程已是各家平臺廠商必爭之地,同樣的,微軟也致力推廣軟體工程,此次TechEd更派出來自微軟全球技術支援中心的邱英瑞,主講「以 VSTS實踐測試導向開發」及「如何使用Visual Studio Team Tester找出網站效能問題」,從會後學員發問踴躍的情況來看,是非常實用的課程。
測試導向開發(Test-Driven Development,TDD)「先寫測試程式再寫程式」的論點,目前在臺灣的接受度始終不高。邱英瑞強調:「每一個新功能都應從一個單元測試起步。」 寫程式前如何寫測試程式?VSTS幫助開發者在設計好類別(Class)的程式碼框架後,即可透過工具自動產生單元測試的框架,開發者只要填上驗證的細 節,即是一個簡單的單元測試。
邱英瑞並在課堂中展示了VSTS的程式碼品質控管機制,包括程式碼分析、程式碼涵蓋及報表等功能。VSTS提供微軟建議的程式規範,企業可在專案設定中,把程式碼分析及單元測試加入簽入原則,以確保簽入TFS的程式,是經過驗證確保品質的內容。
新版VSTS將支援Ajax測試機制
VSTS的Web測試功能,可以測試所有以HTTP協定為基礎的網頁,不限定ASP.NET的程式。不過,針對目前最火紅的Ajax網頁,VSTS 2005版尚未支援,2008版將提供相關的測試機制。
負載測試則是一段持續加壓的過程,在Team Test的設定中,測試人員可以選擇負載測試是否包括思考時間(Think Time)、固定式╱累進式加壓、瀏覽器種類以及加壓的時間。
對此邱英瑞建議測試者必看的資訊,包括錯誤訊息、前10個執行最久及耗費處理器最多的網頁與查詢。
此外,執行大量負載測試時邱英瑞提醒學員,別讓代理程式超過負載(處理器使用率超過75%、實體記憶體少於10%)。
從課後學員提問的內容觀察,臺灣軟體產業的測試觀念還在起步階段,VSTS 2005的Team Test的功能與同類型產品比較,雖然仍顯初階,但對於多數企業而言已是綽綽有餘,看來這也是微軟不急著宣傳2008版的原因。
Web開發者關注Silverlight與ASP.NET AJAX協作關係
而就Web的RIA技術來說,微軟才剛在今年三月宣布釋出ASP.NET AJAX,現在又多了一個Silverlight,由講師董大偉主講的「ASP.NET AJAX與Silverlight的完全結合」,便是一堂釐清Silverlight、ASP.NET AJAX與ASP.NET三者之間的應用關係與技巧。
董大偉認為,Silverlight是不折不扣的Web前端應用,ASP.NET則是伺服器端的程式語言,兩者之間一前一後,需要結合使用才能發 揮最佳效果,而ASP.NET AJAX正是這個絕佳的橋樑。透過AJAX的JavaScript語言,能銜接Silverlight與後端ASP.NET,尤其在非同步的溝通應用上, 結合這三者,更能擴展網站的應用範圍。
課堂詳細解說Silverlight、ASP.NET與AJAX之間的關係,以及目前能應用的開發工具。由於Silverlight是由XAML 語法描述動畫與向量物件,再利用JavaScript控制行為。XAML目前可以利用Visual Studio 2005加上Silverlight的SDK套件,或是目前仍然測試階段的Visual Studio2008開發,不過董大偉建議,如果是複雜度較高的動畫或物件,建議先在Expression Blend這套微軟新推出的動態向量工具中編輯,會容易許多。
JavaScript角色吃重,效能改善成為焦點
JavaScript並非微軟推出的程式語言,臺灣微軟資深應用開發技術經理周旺暾特地撥出一堂課主講「JavaScript程式碼在瀏覽器中的效能」。多少透露出JavaScript對Web開發的重要性。
周旺暾分別從語言本身的特性、撰寫習慣、網路傳輸、在IE環境執行的最佳化等多種面向切入,介紹許多技巧。例如深入JavaScript的變數範 圍鏈(scope chain),告訴學員在函式中盡量將廣域變數指定給區域變數,減少查詢變數的時間。DOM物件的反覆查詢,同樣也會造成效能不彰,在使用時盡量指定給 JavaScript的變數。
其他像是用區域變數取代一長串透過「.」串接的物件,或是避免使用Eval、Switch、With這些效能不佳甚至帶有安全顧慮的敘述。而習慣Java這類物件導向語言的開發人員,也要避免使用「set」、「get」這樣的物件方法,才能提升效能。
這堂課不但從理論上說明JavaScript的特性與效能瓶頸所在,更提供具體的撰寫方法,對開發人員相當實用。課程最後還介紹開發Web時有用 的小工具,包括IE Developer Toolbar、Fiddler、AJAX View等3款,在除錯或改善效能與程式品質上,都能帶來幫助。文☉李延華、黃天賜
強化遠端辦公室身分認證 Windows Server 2008將AD(Active Directory)服務區分為Active Directory 網域服務(AD DS)、Active Directory輕量型目錄服務(AD LDS)、Active Directory憑證服務(AD CS)、Active Directory數位版權服務(AD RMS)及Active Directory聯邦式服務(AD FS),有些功能雖然之前版本就有,但不一定整合入AD服務中,現在則是全都納入AD的管理範圍內。此外,對於遠端分支辦公室的AD部署與管理,更增加唯 讀網域控制站(Read-Only Domain Controller,RODC)的概念,減少擔任DC(Domain Control)的伺服器負擔外,更提升遠端辦公環境AD認證的安全。
|
目前的網域控制站都是可寫入的,但未來設立在分支辦公室且繼承總公司DC的網域將會是唯讀的。資料來源:微軟 |
RODC是AD服務中最重要的改變之一。以往AD服務只能全部啟動或關閉,在規模較大的企業環境中,如果分公司員工需要登入AD服務,只能連回總公司處理,或者直接在分公司建立一臺AD,但是無法確認資料完整性。
RODC則是讓遠端辦公室的AD只具備Read-Only權限。權限管控上,RODC的管理員不具備網域管理員權限,而且不能任意修改本機上的設 定,只有在DC變更設定時,才會自動派送給所有RODC並執行。若企業的應用程式需要身分驗證,但又不想全部回歸總公司的AD處理時,RODC是另一種新 的選擇。除了可應用在遠端辦公環境外,DMZ區及對網際網路服務的伺服器也都可以應用RODC,它可以避免該區域AD遭攻擊而被篡改資料。
另一方面,AD中密碼管理還具備Fine-Grained Password Policy功能,我們可在同一個網域預先設定不同密碼政策,然後將對應的帳號導入特定密碼政策就好。文☉蘇碩鈞
將IAS提升至政策管理 Windows Server Network Policy Server(NPS)是Windows Server 2008中新的伺服器角色,可視為網際網路驗證服務(Internet Authentication Services,IAS)的強化版,Windows Server 2003中IAS Server只是單純負責RADIUS部分,Windows Server 2008的NPS則能管控各種網路連線的措施及功能,除了處理RADIUS外,更能整合Network Access Protection(NAP)功能,以政策管控的方式,限制用戶端電腦行為。
|
NAP平臺的伺服器端架構包含強制執行點和政策伺服器。途中的SHV是指系統健康狀態驗證元件,而ES是政策強制執行伺服器。資料來源:微軟 |
NPS可以定義政策內容及執行,但不負責認證(Authentication),這部分還是依賴Windows AD(Active Directory),我們可利用NPS的RADIUS認證網路設備,並設定是否符合管理政策,一旦符合,就交給Windows AD處理認證及授權。
NPS的元件中目前包括RADIUS Server/Client、NAP及DHCP等網路服務。
最值得一提的是,NPS整合NAP功能。NAP是提供電腦在連結網路前,先行測試電腦的健康狀態(Healthy check),例如是否啟動防火牆、已更新病毒碼等,若不符合管理政策中的狀態檢查,就會強制導入「受限制網路(Restricted Network)」,並更新相關程式,假設該電腦不願意更新程式,就拒絕讓它存取網路資源。而NPS就是定義管理的政策內容,搭配DHCP設定,強制給與 不同存取網段,用戶端電腦中的NAP則會依據NPS定義的管理政策,執行對應的處理方式。文☉蘇碩鈞
更強大的遠端連線服務 Windows Server的終端機服務(Terminal Services,TS),可以讓使用者遠端連線至伺服器,存取系統資源。到了Server 2008則大幅提升這項服務上的功能,除了加強遠端桌面連線的顯示畫面外,還能夠讓遠端電腦直接存取伺服器上的應用程式。新的TS能將可運作於 Windows平臺的應用軟體,透過網路分享給其他使用者,讓許多使用者能夠同時遠端連線執行應用軟體。
|
新版TS主要包含了Gateway、RemoteAPP、Web Access。其中RemoteApp能讓遠端使用者直接存取TS伺服器上的應用程式,讓使用者如同在本機電腦上操作一般,經由TS遠端連線執行應用軟體。 |
管理者可透過TS建立集中式的應用軟體存取服務,省去在每個使用者電腦上安裝應用軟體,且能設定使用者在TS上存取應用軟體的權限,管理遠端電腦 存取TS上應用軟體,避免使用者安裝、執行未經授權的應用軟體。管理者也可以將功能類似的應用軟體建置在同個TS,便於集中管理、有效運用。
關於效能,微軟也特別提醒在TS上建置應用軟體時要注意的環節。建立服務的實體主機,它本身的系統效能或網路負載量是否足夠,特別是I╱O存取需 求。例如繪圖軟體這類對硬碟存取有高度需求的應用軟體,管理人員在規畫時,要避免其他高硬碟存取需求的軟體裝在同一實體主機,避免影響效能。
整合先前併購Softrictly公司所取得的SoftGrid應用程式虛擬化技術,TS讓伺服器以虛擬平臺的方式,執行其他版本Windows 作業系統的應用軟體。除了不同平台的作業系統,SoftGrid也能讓應用軟體的不同版本共存,例如Word 2007與Word 2003,使用者亦能經由TS同時開啟兩種版本的應用軟體。
除了伺服器的虛擬化,現在我們也可以藉由TS的虛擬平臺,來安裝未經作業系統認證的應用軟體,讓我們能夠在高可靠度的作業系統下使用或是測試這類應用軟體。文☉林郁翔
朝64位元大步邁進
|
64位元Windows的系統登錄檔為32位元應用程式新增了WOW機碼目錄。 |
在32位元的環境下,虛擬記憶體的定址只有4 GB,而在64位元的環境下,虛擬記憶體定址則可高達1 TB。以Windows Server 2008企業版為例,在64位元的版本,則可支援高達2 TB的記憶體容量。
目前Windows x64的作業系統,亦支援GUID磁碟分割表(GPT),可支援高達18 EB(18,874,368 TB)的單一磁區分割,支援更龐大的硬碟容量,且每個磁碟能切出128個分割。
目前Server 2008所支援的64位元處理器包含x64以及IA64兩種,雖然兩者皆屬於64位元的系統,但應用程式並不能夠相互存取,因此在軟體開發時,得針對不同處理器的Windows系統,設計所屬的應用程式。
除了不同64位元處理器的應用程式相容性,在未來的64位元作業系統中,將不再納入早期的作業系統環境及面臨淘汰的網路通訊協定,例如MS-DOS、 Windows 16位元等作業系統,以及IPX/SPX、Client Service for NetWare、NetBEUI等通訊協定,減少前代系統環境對於新版作業系統的負擔。若應用程式需要這類的系統環境或通訊協定才能運作,則需要在系統內 架設虛擬平臺,透過虛擬平臺執行。
若要在64位元的作業系統下執行32位元的Windows應用程式,則可使用WOW (Windows On Windows),將32位元的資料轉換為64位元的長度,讓Windows NT可以在64位元的Windows上執行。文☉林郁翔
--
[垃圾桶] 裡沒有會話群組。 當您有 2000 MB 以上的儲存空間時,誰還需要刪除郵件?!
沒有留言:
張貼留言