从生活角度学习应用程序、虚拟目录、应用程序池(解惑篇)
轉自:http://blog.csdn.net/zwk626542417/article/details/9819343
概要
? ?應用程序、虛擬目錄、應用程序池這三個概念在上一篇中《一看就會之—利用IIS服務發布網站(實踐篇)上》中多次涉及,所有我們今天就重點來理解一下這幾個概念。
?
應用程序
應用程序和軟件的區別
? ?應用程序是指為了完成某項或某幾項特點任務而被開發運行于操作系統上的計算機程序。可能到這里有的人就認為那程序不就是軟件了嗎,其實程序和軟件不是一個概念,程序只是我們軟件的一部分,在這里我們為大家舉個例子來讓大家區別下程序和軟件,一個游戲軟件包括程序(比如windows平臺的*.exe,macosx平臺的*.app等)和其它圖片(*.bmp等)、dll文件、音效(*.wav等)幫助文檔等等附件,那么只有這個(*.exe或者*.app)程序稱作“應用程序”,而它與其他文件(dll文件、圖片、音效、幫助文檔等)在一起合稱“軟件”,這樣大家對應用程序和軟件應該就可以分清楚了。
?
Web應用程序
? ?下面呢回到我們今天的主題上來,在上篇文章中的我們利用iis發布的應用程序單指我們的Web應用程序,Web應用程序一般是B/S模式。Web應用程序首先是“應用程序”,和用標準的程序語言,如C、C++等編寫出來的程序沒有什么本質上的不同。然而Web應用程序又有自己獨特的地方,就是它是基于Web的,而不是采用傳統方法運行的。換句話說,它是典型的瀏覽器/服務器架構的產物,用戶只需要有瀏覽器即可,不需要再安裝其他軟件。一個Web應用程序是由完成特定任務的各種Web組件(webcomponents)構成的并通過Web將服務展示給外界。在實際應用中,Web應用程序是由多個Servlet、JSP頁面、HTML文件以及圖像文件等組成。所有這些組件相互協調為用戶提供一組完整的服務。
?
?
應用程序池:
? ? 說完應用程序,不能不提我們的應用程序池,它的定義是應用程序池是將一個或多個應用程序鏈接到一個或多個工作進程集合的配置。
?
? ? 這樣理解起來有點抽象,我為大家舉個例子來方便大家的理解,我們將Web應用程序具體實例化為一個動態網站。應用程序池就是可以看成裝載計算機分配給動態網站的內存的容器。如果內存是水,那么應用程序池就是魚缸,動態網站就是魚缸中的金魚。多個動態網站可以存在于同一個應用程序池里,即魚缸中可以放多條金魚。當然,如果金魚多了,魚缸中的空間有限,金魚之間就會爭搶空間,不是很堅固的魚缸可能就會破裂,所有金魚都會受到影響。即是動態網站多了,內存不足,可能會造成內存級別的溢出漏洞,影響所有在那個應用程序池上的動態網站。所以說應用程序池就是一個容器,它內部裝的是動態網站的內存。
?
虛擬目錄
? ? 虛擬目錄理解起來較為容易,虛擬目錄顧名思義就是虛擬的不存在的,虛擬目錄只不過是對網站的物理路徑目錄的一個映射而已。使用虛擬目錄的重要意義是,網絡管理員可以把Web站點的負載分布到多臺服務器上,這樣使每臺服務器都能保持較高的處理速度,即提高了網站的速度也增加了網站真實服務器的安全性。我們平常用的較多的像百度、谷歌、淘寶、京東,它們幾乎都采用虛擬目錄這種方式,來將站點的負載分布到不同區域很多臺服務器上,這樣便可以很好的保證大量用戶登錄時網站提供優質的處理速度。
?
? ? 在這里還有一點要說的就是,虛擬目錄可以用來被訪問,但是如果虛擬目錄不轉為應用程序時,虛擬目錄里面的一些動態腳本不能執行,包括ASPX、ASP等等。轉換成應用程序后,虛擬目錄中的動態腳本便可以執行了。
?
? ? 這樣我們上一篇文章中的問題這里面就找到答案了,添加完網站后,沒有添加虛擬目錄自然可訪問我們開發的網站,因為這時我們訪問的是網站的物理路徑,自然可以訪問了。而沒有將其轉為應用程序也不影響訪問,是因為我們的開發的網站比較簡單,沒有用到很多的動態腳本和ASPX、ASP等等,所以才不會影響我們對開發網站的訪問。所以在這里我們還是建議大家發布網站添加虛擬目錄并轉為應用程序,這樣才會萬無一失。
?
總結
? ?學習并不是一件孤立的事情,我們應將我們的學習與我們的生活有機結合起來,從我們生活中找到鮮活的例子來再現我們所學習到的抽象知識,從生活的角度學習,我們的學習會越來越輕松的。
轉載于:https://www.cnblogs.com/hnfxs/p/3270294.html
總結
以上是生活随笔為你收集整理的从生活角度学习应用程序、虚拟目录、应用程序池(解惑篇)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ios开发中遇到的文件和字符的问题大总结
- 下一篇: lightoj 1004 dp:数字三角