服務器是提供計算服務的設備。由于服務器需要響應服務請求,并進行處理,因此一般來說服務器應具備承擔服務并且保障服務的能力
服務器要運行什么應用是要根據放在服務器上面的項目所需環境來選擇應用。不同項目的環境都是不一樣的。下面就由PHP項目環境來舉例說明。不論什么語言開發的項目。一般都離不開WEB服務器、動態服務器、數據庫服務器、緩存服務器等。
WEB服務器WEB服務器并不等于服務器。因為有的人會說部署項目的時候需要一臺web服務器。這里的web服務器是指定真正的服務器。
那什么是服務器和Web服務器呢?
服務器的構成包括處理器、硬盤、內存、系統總線等,和通用的計算機架構類似。
WEB服務器指的接入用戶的HTTP請求,它是一個安裝在服務器系統上面的軟件。常見有nginx、Apache等
如果后WEB期的用戶訪問量過大,可擴張服務器機器和加入負載均衡集群來實現服務性能的橫向擴展??v向擴展就是優化你當前服務器的配置性能。
例如:8核、16G內存服務器,給它開啟多個進程來進行服務請求的接入。這樣能讓單臺服務器的性能更優。一般訪問量大都是橫、縱結合。
動態服務器一個動態網站它是靜態文件和動態腳本語言的結合。動態腳本它需要動態服務器來進行解析執行處理。執行成功后在返回給我們用戶所需的內容。
比如說像PHP里面的PHP-FPM或者Java里面的Tomcat,這些都是屬于動態腳本語言需要的服務運行。只有它們才能去執行和識別所寫的腳本。
數據庫服務器數據庫服務器簡稱數據庫,主要是用于網站的數據存儲工作。它需要CPU足夠快、內存足夠大,磁盤IO足夠快和穩定。因為你腳本在處理數據的時候,需要去從數據庫里面去查詢。就像我們的大倉庫找一件衣服,肯定沒得你自己在衣櫥里找一件衣服那方便。所以一般后期數據量過大的時候我們還需要進行數據庫優化,例如:分庫分表、讀寫分類、索引優化等等
常用的數據庫有:MySQL、Oracle服務器要求CPU配置比較好。
緩存服務器緩存服務器又稱非關系數據庫。一般緩存都是基于服務器的內存來作為數據的存儲單位。所以它對于內存的需要比較高。因為在緩存里面的話,它的IO的讀寫能力是要強于普通磁盤IO讀寫能力。
這也是為什么說在用戶量比較大的情況下面我們會用會有緩存來存熱點數據。從而讓用戶請求得到更快響應。因為數據庫查找起來比較費時,但熱點數據又是用戶每時每刻來訪問獲取。
常見的有:Redis、Memcached 等
一般簡單的網站的話,就是這幾部分來組成,但如果說網站的規模比較大的話,那么我們的服務器所需要的內容可能會更多一些,但是它也是離不開這些基本組成。
有幫助的朋友,感興趣的朋友可以關注我額。如果有什么技術問題可以在評論區討論