• 沒有找到結果。

新增功能-個人訊息箱

在文檔中 ASP.NET實作網路虛擬社群 (頁 133-199)

5.4 未來工作計畫

5.4.10 新增功能-個人訊息箱

會紀錄使用者的收支情況,以及可以互相傳遞短訊(類似 BBS 的站內寄信)。

參考資料

[1] Darryl Green, Ann DiCaterino, ”A Survey of System Development Process Models (Center for Technology in Government)”

[2] 李潛瑞, ”終極製程專欄(http://www.dotspace.idv.tw/xp/xp.htm),”

“極端軟體製程(http://www.dotspace.twmail.net/xpcolumn/xpexplained/Foreword.htm)”

[3] 曹祖聖, 吳明哲, 黃世陽, 林義証, 蔡文龍, ”ASP .NET 實戰 FOR C #,” 松崗出版社 [4] 黃敬仁, ”系統分析,” 碁峯資訊

[5] 王妙雲, ” 系統分析與設計-方法.工具論,” 碁峯資訊

[6] Shelly, Cashman, Rosenblatt, ” System Analysis and Design,” Course Technologyh [7] 施威銘研究室, ” SQL Server 設計實務, ” 旗標出版社

[8] 黃立民, ” 用實例學 ASP .NET 使用 C#與 ADO.NET, ” 碁峯資訊 [9] 許進標, ” Windows Server 2003 網站管理高手攻略, ” 碁峯資訊 [10] 施威銘研究室, ” SQL Server2000 管理實務, ” 旗標出版社

附錄一 軟體開發模式比較

1.Sawtooth 模式的變化形式

2.較 sawtooth 多出管理部分,包含管理檢 查與展示

Computing information center

http://209.51.139.172/computing/001.html

附錄二 XP 提出的 28 條規則

規劃階段

選寫使用者故事(User stories are written)

進行發行規模已建立進度時程(Release planning create the schedule) 提高小版本的發行頻率(小階段發行)(Make frequent small releases) 評估專案的速度(The Project Velocity is measured)

將專安開發工作切割成許多的反覆(The project is divided into iterations) 以反覆規劃啟動每一個反覆開發(Iteration planning starts each iterations) 配置人員(Move people around)

每一天的站立會議(A stand-up meeting starts each day) 當 XP 無法遵守確定它(Fix XP when it breaks)

設計階段

簡化(Simplicity)

選擇一個系統象徵(Choose a system metaphor)

設計會議時使用 CRC 卡(Use CRC cards for design sessions) 建立失誤解決方案(Create spike solutions to reduce risk) 功能不要太早加入(No functionality is added early)

隨時隨地盡可能重整(Refactor whenever and wherever possible) 程式碼編輯

客戶是隨時可得的(The customer is always available)

程式碼必須有一致的撰寫標準(Code must be written to agreed standards) 首先撰寫單元測試程式(Code the unit test first)

所有程式碼產品都是雙人組設計(All production code is pair programmed) 一次只有一對雙人組整合程式碼(Only one pair integrates code at a time) 隨時整合(Integrate often)

使用集體程式碼擁有權(Use collective code ownership) 直到最後才最佳化(Leave optimization till last)

決不加班(No overtime) 測試階段

所有程式碼必須有單元測試(All code must have unit tests)

所有程式碼在發行前比須通過單元測試(All code must pass all unit tests before it can released) 發現臭蟲立即建立測試(When a bug is found tests are created)

隨時實施驗收測試並公佈成績(Acceptance tests are run often and the score is published)

附錄三 IIS 6.0 進步的地方

(引用自:http://www.asca.com.tw/asca/asp/03.htm )

IIS 5.0 IIS 5.1 IIS 6.0

Windows 2000 Windows XP Professional Windows Server 2003 家族

(可選)Windows XP

Professional 上的 IIS Windows

已對 IIS 6.0 進行了重新設計以便利用基本 Windows 內核 HTTP.sys。這使其具有內置的

並非一個:MetaBase.xml 和 MBSchema.xml。有關 IIS 配置數據庫的詳細信息,請參閱關於 配置數據庫。管理在 IIS 4.0 中,應用程序既可以在與 Internet 服務相同的進程中運行,也可

群集不是 IIS 6.0 的功能(不支持 IISsynche.exe)。群集是 Windows Server 2003 家族的 功能。有關 Windows 群集 (MSCS) 的信息,請參閱 Windows Server 2003 家族的幫助。

以編程方式管理

在早期版本的 IIS 中,可以從編譯的 C++ 應用程序使用管理基本對像 (ABO) 或者從 C++ 或腳本文件使用 Active Directory 服務界面 (ADSI) 以編程方式管理 IIS。IIS 6.0 包括了 Windows 管理規範 (WMI) 提供程序,WMI 這一技術允許管理員以編程方式控制所有服務和 應用程序。詳細信息,請參閱使用 IIS WMI 提供程序。有關新的 ADSI 方法的信息,請參閱 IIS 6.0 中的配置數據庫更改。Active Server Pages

從 IIS 6.0 開始,Microsoft Active Server Pages (ASP) 可以與 Microsoft ASP.NET 一起使 用。有關配置 IIS 以運行 ASP.NET 應用程序的信息,請參閱 ASP.NET。有關 IIS 6.0 中 ASP 調用 ISAPI 服務器支持函數 HSE_REQ_REPORT_UNHEALTHY,WWW 服務回收作為 ASP.dll 宿主的工作進程,並在事件日誌中創建一個項目。有關 ISAPI 服務器支持函數的詳 細信息,請參閱 MSDN® Online 上 ISAPI 擴展參考中的 ServerSupportFunction。

安全性

IIS 6.0 中的一個最重要的變動涉及 Web 服務器安全性。為了更好地預防惡意用戶和攻 擊者的攻擊,在默認情況下,沒有將 IIS 安裝在 Microsoft Windows Server 2003 家族的成員上。

要點

為了更好地預防惡意用戶和攻擊者的攻擊,沒有將 IIS 默認安裝到 Microsoft Windows Server 2003 家族的成員上。而且,當您最初安裝 IIS 時,該服務在高度安全和「鎖定」的模 式下安裝。在默認情況下,IIS 只為靜態內容提供服務 - 即,ASP、ASP.NET、服務器端包 含、WebDAV 發佈和 FrontPage® Server Extensions 等功能只有在啟用時才工作。如果安裝 IIS 之後未啟用該功能,則 IIS 返回一個 404 錯誤。您可以為動態內容提供服務,並通過 IIS

IIS 6.0 中的其他安全性變動包括下列內容: 之前,在 Windows 2000 Server 上運行 IIS 鎖定嚮導。IIS 鎖定嚮導通過禁用或刪除 Windows 2000 Server 安裝中不需要的功能來保護計算機的安全。否則,升級後計算機上仍保留這些功 能,這會使您的服務器易受攻擊。

註冊表項 RetainW3SVCStatus 已添加到註冊表中

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC 的下面。在

RetainW3SVCStatus 下,您可以添加任何值,然後給它賦予一個 DWORD 值。例如,您可以 創建註冊表項

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\RetainW3SVCStatus\do_no t_disable,並且 DWORD 值為 1。

對於無人參與的安裝,「DisableWebServiceOnUpgrade = false」項存在於無人參與的安裝腳本 中。通過組策略禁用 IIS:通過使用 Windows Server 2003 家族成員,域管理員可以禁止用戶 在其計算機上安裝 IIS。

以具有低級訪問權限的帳戶運行:IIS 工作進程在訪問權限極少的用戶上下文中運行。這大大 減少了潛在攻擊的影響。

提高 ASP 的安全性:所有的 ASP 內置功能總是以具有極少訪問權限的帳戶 IUSR_computername 運行。

運行可執行文件的限制:為了運行系統文件夾中的大多數可執行文件(如 cmd.exe),您必須 是 Administrators 組、LocalSystem、Interactive 或 Service 帳戶的成員。該限制限制了對 Administrators 的遠程訪問,因此匿名用戶無法運行可執行文件。

修補程序管理:對於修補程序管理,管理員可在不中斷服務的情況下安裝最新的安全修補程 序。

已知的擴展:IIS 只為對具有已知文件擴展名的文件的請求提供服務。如果請求內容的文件擴 展名未映射到已知的擴展,則服務器拒絕請求。

內容的寫保護:在默認情況下,拒絕匿名用戶(以 IUSR_computername 帳戶運行)對 Web 內 容進行寫入訪問。

索引資源:該權限現在會在默認情況下啟用。

新策略:「禁止安裝 IIS」策略已經添加到 Windows Server 2003 產品家族中。該策略允許域 管理員控制可以在域中哪些計算機上安裝 IIS。詳細信息, 請參閱 Windows 幫助中的組策 略。

Fortezza:已取消了對該功能的支持。

性能

為了限制分配給 ASP 頁的內存量,IIS 已經將 AspScriptFileCacheSize 的默認值設置為 250 個 ASP 頁,並將 AspScriptEngineCacheMax 的默認值設置為 125 個腳本引擎。在具有一組大 量經常請求的 ASP 頁的站點上,可以將 ASPScriptFileCacheSize 設置得更高一些。因為 ASP 頁的編譯比從緩存中檢索頁要慢很多,所以這會改善性能。在只具有少量經常請求的 ASP 頁 的站點上,可通過將該數字設置得小一些來節省內存。

IIS 工具組件

Windows NT Server 的協作數據對像 (CDONTS):CDONTS 已從 Windows Server 2003 家族 中刪除。如果 Web 應用程序使用 CDONTS,則可以將它們轉換為 Microsoft 協作數據對像 (CDO)。CDONTS 中的大多數方法在 CDO 中都有相匹配的方法,但是名稱可能不同。有關 平台軟件開發工具包 (PSDK) 中 CDO 的參考資料,請參閱 MSDN Online 上的 Overview of CDO。

未安裝 IIS 工具組件:Ad Rotator、Browser Capabilities、Content Linker、Content Rotator、

Counters、Logging Utility、My Info、Page Counter、Status 和工具不隨 IIS 6.0 一起安裝。但 是,如果您的 Web 服務器是從低版本的 IIS 升級的,則這些工具組件不會被刪除。您可以

附錄四 系統最佳化

IIS 6.0 and ASP.NET 1.1 are now configured and available.

Recommended Settings

When running ASP.NET 1.1 with IIS 6.0 there are several configuration settings that are recommended to get the optimal performance from ASP.NET:

ƒ Configuring worker process memory limits

ƒ Configuring worker process recycling Configuring worker process memory limits

By default IIS 6.0 does not set a limit on the amount of memory that IIS is allowed to use. ASP.NET’s Cache feature relies on a limitation of memory so the Cache can proactively remove unused items from memory.

It is recommended that you configure the memory recycling feature of IIS 6.0. To configure this open Internet Information Services Manager (Start | Programs | Administrative Tools | Internet Information Services). Once open, expand the

‘Application Pools’ folder:

For each application pool:

圖 98 Internet Information Services Manager(1)

1. Right-click on the application pool, e.g. ‘DefaultAppPool’, and select

‘Properties’:

圖 99 回收處理標籤(1)

2. Next, enable Memory recycling by clicking on either ‘Maximum used memory (in megabytes):’. The value should not be more than the amount of physical (not virtual) memory on the server, a good approximation is 60% of the physical memory, i.e. for a server with 512MB of physical memory select 310. It is also recommended that the maximum not exceed 800MB when using a 2GB address space. If the memory address space of the server is 3GB, the maximum memory limit for the worker process can be as high as 1,800MB:

圖 100 回收處理標籤(2)

Click ‘Apply’ and the ‘OK’ to exit the properties dialog. Repeat this for all available application pools.

Configuring worker recycling

By default IIS 6.0 is configured to recycle its worker process every 29 hours. This is a bit aggressive for an application running ASP.NET and it is recommended that automatic worker process recycling is disabled.

To disable automatic worker process recycling, first open Internet Information Services Manager (Start | Programs | Administrative Tools | Internet Information Services). Once open, expand the ‘Application Pools’ folder:

圖 101 Internet Information Services Manager(2) For each application pool:

1. Right-click on the application pool, e.g. ‘DefaultAppPool’, and select

‘Properties’:

圖 102 回收處理標籤(3) 2. Uncheck ‘Recycle worker process (in minutes):’:

圖 103 回收處理標籤(4)

Click ‘Apply’ and the ‘OK’ to exit the properties dialog. Repeat this for all available application pools.

IIS5.0 效能調整

在本節中我們介紹如何增進 IIS Web 伺服器的執行效能,請參考下列說明:

• 啟用 HTTP 持續作用:勾選 IIS 伺服器或 Web 站台的[啟用 HTTP 持續作用]選項可讓用 戶端與伺服器之間的連線持續維持不中斷,因此可強化伺服器的效能。本功能為預設 啟用,請勿停用此功能。

• 停用記錄:雖然啟用記錄可以了解站台被使用的狀況,但是卻會影響整體的效能。

• 盡量將站台的主目錄或虛擬目錄中的應用程式保護設為[低(IIS 處理程)],因為使用[高 (獨立的)]選項會降低執行效能。

• 儘量使用 ISAPI 或 ASP 來撰寫網頁,而不要使用 CGI,因為每次呼叫 CGI 都會重新啟 動一個新的處理程序,因此會嚴重影響整體的效能,如果在多人使用時情況就會更嚴 重。

• 使用 ASP 時不用啟用 ASP 偵錯功能,請進入 Web 站台/虛擬目錄的內容畫面中,接著 點選[主目錄]/[虛擬目錄]頁籤,然後按[設定]按鈕,此時就會出現一「應用程式設定」

畫面,請再點選[應用程式偵錯]頁籤即可設定,請參考圖 75。

圖 104 設定應用程式偵錯的畫面

• 採用 HTTP 壓縮以減少網路輸送量,使用[HTTP 壓縮]功能之後,伺服器會先把要傳給 用戶端的資料壓縮,然後才傳給具有解壓縮能力的用戶端。雖然 HTTP 壓縮提供 Web

伺服器與啟用壓縮的瀏覽器之間較快速的網頁傳輸。但是如果伺服器中建立大量的動

http://webtool.rte.microsoft.com

中下載一測試工具(Microsoft Web Application Stress tool/WAS,約 9.6MB),在該站台中具有該工具的的使用說明資料以及其他工具的比 較,例如下圖是連至該站台的畫面。

圖 105 Microsoft Web application Stress tool 網站的畫面

如果想要下載該軟體,請點選畫面上的[Download]連結即可,下載後只要執行 setup.exe 即可安裝。安裝完成之後我們可以在程式及中看到該工具的選項,請參考圖 77。

圖 106 壓力測試工具的選項畫面

該測試軟體除了可以做 Web 站台的壓力測試之外,還可以讀取 Web 站台與 FTP 站台的 日誌檔,例如圖 78 與圖 79 分別為讀取 Web 站台、FTP 站台日誌檔後的畫面。

該測試軟體除了可以做 Web 站台的壓力測試之外,還可以讀取 Web 站台與 FTP 站台的 日誌檔,例如圖 78 與圖 79 分別為讀取 Web 站台、FTP 站台日誌檔後的畫面。

在文檔中 ASP.NET實作網路虛擬社群 (頁 133-199)

相關文件