- PHP動態網站程序設計(第2版)
- 唐四薪
- 866字
- 2020-04-22 11:55:37
1.1 動態網站的原理
1.1.1 動態網站的起源
動態網站是一種基于B/S結構的網絡程序。那么什么是B/S結構呢?這就先要從網絡軟件的應用模式說起。
早期的應用程序都是運行在單機上的,稱為桌面應用程序。后來由于網絡的普及,出現了運行在網絡上的網絡應用程序(網絡軟件)。網絡應用程序有C/S和B/S兩種體系結構。
1.C/S體系結構
C/S是Client/Server的縮寫,即客戶機/服務器結構,這種結構的軟件包括客戶端程序和服務器端程序兩部分。就像大家常用的QQ等網絡軟件,需要下載并安裝專用的客戶端軟件(見圖1-1),并且服務器端也需要特定的軟件支持才能運行。

圖1-1 C/S結構的QQ客戶端界面
C/S結構最大的缺點是不易于部署,因為每臺客戶端計算機都要安裝客戶端軟件。而且,如果客戶端軟件需要升級,則必須為每臺客戶端單獨升級。另外,客戶端軟件通常對客戶機的操作系統也有要求,如有些客戶端軟件只能運行在Windows平臺下。
2.B/S體系結構
B/S是Browser/Server的縮寫,即瀏覽器/服務器結構。它是隨著Internet技術的興起,對C/S結構的一種變化或者改進的結構。在這種結構下,客戶端軟件由瀏覽器來代替(見圖1-2),一部分事務邏輯在瀏覽器端(Browser)實現,但是主要事務邏輯在服務器端(Server)實現。目前流行的是三層B/S結構,即表現層、事務邏輯層和數據處理層。

圖1-2 B/S結構的瀏覽器端界面
B/S結構很好地解決了C/S結構的上述缺點。因為每臺客戶端計算機都自帶瀏覽器,就不需要額外安裝客戶端軟件了,也就不存在客戶端軟件升級的問題了。另外,由于任何操作系統一般都帶有瀏覽器,因此B/S結構對客戶端的操作系統也沒有要求了。
但是B/S結構與C/S結構相比,也有其自身的缺點,首先因為B/S結構的客戶端軟件界面就是網頁,因此操作界面不可能做得很復雜、漂亮。例如,很難實現樹形菜單、選項卡式面板或鼠標右鍵快捷菜單等(或者雖然能夠模擬實現,但是響應速度比C/S中的客戶端軟件要慢很多)。其次,B/S結構下的每次操作一般都要刷新網頁,響應速度明顯不如C/S結構。再次,在網頁操作界面中,操作大多以鼠標方式為主,無法定義快捷鍵,也就無法滿足快速操作的需求。
提示:C/S結構和B/S結構的網絡軟件,其程序都是分布在客戶機和服務器上,因此它們統稱為分布式系統(Distributed System)。
- 少兒人工智能趣味入門:Scratch 3.0動畫與游戲編程
- Docker and Kubernetes for Java Developers
- Oracle從新手到高手
- Practical DevOps
- Java持續交付
- 老“碼”識途
- 重學Java設計模式
- Gradle for Android
- 編程改變生活:用Python提升你的能力(進階篇·微課視頻版)
- PowerDesigner 16 從入門到精通
- Access數據庫應用教程(2010版)
- 3ds Max 2018從入門到精通
- 自己動手構建編程語言:如何設計編譯器、解釋器和DSL
- Implementing Domain:Specific Languages with Xtext and Xtend
- 深度學習的數學:使用Python語言