国产成人精品18p,天天干成人网,无码专区狠狠躁天天躁,美女脱精光隐私扒开免费观看

ASP開(kāi)發(fā)準則是什么

發(fā)布時(shí)間:2021-08-17 12:10 來(lái)源: 閱讀:0 作者: 欄目: ASP 歡迎投稿:712375056

雖然許多使用 ASP 的 Web 站點(diǎn)根本就不用組件,但在這篇文章中假定 ASP 是 Internet 客戶(hù)機和組件之間的橋梁。

ASP 和組件之間的劃分服務(wù)

ASP 最常用于在服務(wù)器上創(chuàng )建供客戶(hù)機使用的 HTML 或 XML 文件,因此我們主要討論這種使用方案。這就引出了一個(gè)常見(jiàn)的問(wèn)題,如果 ASP 頁(yè)面在服務(wù)器上,那么它們是否屬于業(yè)務(wù)層的一部分呢?在組件世界中,答案通常是否。雖然 ASP 確實(shí)在服務(wù)器上運行,而且可能與應用程序服務(wù)器在同一個(gè)空間,但是這不能使它成為業(yè)務(wù)邏輯的一部分。

隨著(zhù)用戶(hù)界面工具的發(fā)展或者隨著(zhù)啟用更多的業(yè)務(wù)對業(yè)務(wù)方案,擁有這種明確的區別將獲得巨大的回報。

話(huà)說(shuō)到此,讓我們來(lái)看一些最重要的業(yè)務(wù)層和表示層劃分準則:

令 UI 代碼與業(yè)務(wù)邏輯分離。這包括編寫(xiě)與 UI 耦合的代碼,例如使用 ASP 內部組件的 MTS 對象,讓它與業(yè)務(wù)邏輯代碼分離,如同在不同的 DLL 中。

將事務(wù)與 ASP 頁(yè)面分離。事務(wù) ASP 在某些情況下非常好,但是組件和多層應用程序會(huì )改變這種情況。組件不應該依賴(lài)由客戶(hù)機層來(lái)管理它們的事務(wù)和業(yè)務(wù)邏輯語(yǔ)義。

將表示組件(使用請求和響應的組件)與 Web 服務(wù)器放在相同的機器和/或進(jìn)程中。如果將使用 ASP 內部組件對象的對象放在遠程機器上,那么對內部組件的所有調用將以回調形式發(fā)生。調用 IIS 客戶(hù)機的是 COM+ 服務(wù)器,它顯著(zhù)降低了性能并使安全配置復雜化??梢詫⑦@些調整對象放在標記為“庫激活”的 COM+ 應用程序中。

ASP 存在于服務(wù)器上,因此 ASP 頁(yè)面必須符合資源共享規則,并且記住可伸縮性。請看下面的詳細內容:

在“會(huì )話(huà)”中,管理應盡量避免用戶(hù)特定的狀態(tài)。

保持 ASP 無(wú)狀態(tài),并在可能的情況下允許資源池。

操作方式

在評價(jià)某個(gè)代碼段是否屬于業(yè)務(wù)邏輯或者表示層時(shí),請問(wèn)一下自己,“如果我必須用按鍵式電話(huà)應用程序代替我的 ASP 頁(yè)面,那么該代碼是否還有用?”如果答案為“是”,那么可以嘗試將它劃分為業(yè)務(wù)邏輯代碼或者用戶(hù)界面幫助器代碼。

如果改變了客戶(hù)機后該代碼不能用,或者如果它是構造用戶(hù)界面的幫助器,則該代碼屬于表示服務(wù)層。它在 ASP 頁(yè)面中,或在使用 ASP 內部組件的組件中。它不屬于業(yè)務(wù)對象組件。

理解桌面與 ASP 客戶(hù)機的區別

ASP 是組件的特殊客戶(hù)機,不同于桌面上的傳統單線(xiàn)程 Win32 應用程序。主要區別概括如下。

線(xiàn)程管理:ASP 是多線(xiàn)程客戶(hù)機。這意味著(zhù)可以有許多并發(fā)活動(dòng)一起運行,也許在同一時(shí)刻處理不同的 ASP 頁(yè)面。這說(shuō)明不能使對象偽稱(chēng)它是唯一的使用者來(lái)獨占系統。這樣做可能有意外的反應,例如,養成一個(gè)壞習慣:將對象存儲在 ASP 會(huì )話(huà)或者應用程序變量中。

安全環(huán)境:ASP 是由 Web 站點(diǎn)中的 Internet Information Services 5.0 執行的,有低、中、高三種隔離度。甚至這些 Web 站點(diǎn)可以有不同的安全設置、允許或拒絕匿名訪(fǎng)問(wèn)、驗證客戶(hù)等等。所有這些設置產(chǎn)生了大量的方案,即不同的用戶(hù)帳戶(hù)最終用的是您的對象。

輕松增長(cháng):這不是技術(shù)問(wèn)題,而是 Web 應用程序所提供設施的副效應。

傳統上,為桌面應用程序增加用戶(hù)基,要求仔細計劃好向已知數量客戶(hù)機的轉出。ASP 已經(jīng)改變了該過(guò)程。在啟動(dòng)和運行后,ASP-Visual Basic 應用程序可以方便地打開(kāi),供當地的或世界范圍的所有職員、所有業(yè)務(wù)伙伴和所有客戶(hù)使用。

可以用這種方式描述 — 擁有超鏈接的單個(gè)電子郵件可以使用戶(hù)基成十倍地增長(cháng)。您的應用程序為此作好準備了嗎?唯一了解的方式是對 Web 站點(diǎn)進(jìn)行強度測試,以獲得實(shí)際性能的預期值。

在 ASP 內應該如何使用 Visual Basic 對象?在頁(yè)面范圍內創(chuàng )建和取消您的對象。

也就是說(shuō),盡可能使 ASP 頁(yè)面無(wú)狀態(tài),只在暫時(shí)狀態(tài)下依賴(lài)會(huì )話(huà)或應用程序變量。不要將對象存儲在會(huì )話(huà)或應用程序變量中。這將 ASP 線(xiàn)程鎖定到您的會(huì )話(huà)、取消所有可伸縮性的預期值。也就是說(shuō),Web 服務(wù)器處理的用戶(hù)數不會(huì )超過(guò)幾十個(gè)。如果需要在會(huì )話(huà)或應用程序中存儲內容,請使之成為數據而不是對象。

還有可以遵守的許多其他準則。我們建議您閱讀 MSDN Voices 上 J. D. Meier 撰寫(xiě)的專(zhuān)欄“Servin' it Up”。該專(zhuān)欄包括了大量的技術(shù)、實(shí)踐和技巧,有助于開(kāi)發(fā)可擴展的、可靠的 ASP 和組件應用程序。

不要將引用存儲在會(huì )話(huà)或應用程序中的 VB 對象中

所有 Visual Basic 6.0 組件都是“單元線(xiàn)程”的,就是說(shuō)它們都運行在 STA 單元中。這意味著(zhù)如果在線(xiàn)程中創(chuàng )建對象,那么對該對象的所有調用都必須用同一線(xiàn)程服務(wù)。許多線(xiàn)程(來(lái)自并發(fā) Web 站點(diǎn)用戶(hù))使用 STA 對象的同一實(shí)例,會(huì )引起一連串的活動(dòng),有可能成為應用程序中的瓶頸。

此外,在會(huì )話(huà)范圍內存儲用 Server.CreateObject 創(chuàng )建的 STA 對象,可以有效地將執行線(xiàn)程聯(lián)系到當前用戶(hù),從而將應用程序的最大并發(fā)用戶(hù)數限制到默認的 20xN(N = 處理器數量)。

操作方式

如果您按照我們的建議使對象無(wú)狀態(tài),則不需要存儲引用以供客戶(hù)機復用,并在應用程序范圍內存儲它們??蛻?hù)機將能夠獨立創(chuàng )建、使用和取消它們自己的對象。這就減少了保持會(huì )話(huà)特有對象的需要,原因是它們不保留會(huì )話(huà)特有的狀態(tài)。

推薦的方式是使對象無(wú)狀態(tài),它在需要時(shí)訪(fǎng)問(wèn)數據庫或其他存儲區(例如 cookies 和 LDAP)。

如果需要使用會(huì )話(huà)或應用程序范圍的數據,請將數據,而不是處理數據的對象,存儲在此。您可以創(chuàng )建一個(gè)類(lèi),來(lái)封裝對所需值的處理。

學(xué)習 IIS 5.0 中的新內容

Internet Information Server 5.0 增加了許多新功能。這些改進(jìn)均已寫(xiě)入 J.D. Meier 的 MSDN 文章中:沿用 IIS 5.0 中的 ASP(英文)。

以上就是ASP的開(kāi)發(fā)準則,希望大家多多了解這方面的內容,這樣對開(kāi)發(fā)ASP有所幫助哦

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。

日本高清二区视频久二区| 无码中文人妻视频2019| 狠狠躁夜夜人人爽天96| 久久久久国色AV免费观看| 久久综合狠狠色综合伊人| 老司机午夜精品99久久免费|