前端童鞋接觸后端機會可能大多都在API層面,甚至對session這些東西都有些不是很明白原理,當然大牛除外。那么像Linux、負載均衡、並發、熱備、雲計算,這些時髦的詞語可能更多是聽得多,如果公司有運維那么更難插手,那么我根據公司實際使用情況試着回答一些網友的問題。
1、公司實際項目中,服務器選擇什么操作系統比較好?
在服務器操作系統市場上有window server、linux、unix 三類操作系統。那我們從實際工作中來看,大多數專業公司(除了.net開發者)采用了linux,因為開源、相關軟件豐富; 一些很牛的公司比如IBM使用的unix當然不用說了;還有一些公司或者個人使用了window server,因為操作非常簡單,使用遠程桌面即可管理。
2、負載均衡。
一般公司都會做,是為了解決訪問壓力,當業務量大到單台服務器無法滿足需要的情況下,使用負載均衡技術把流量導入到多個主機上,達到高並發訪問的目的。負載均衡可以使用硬件(例如F5)或者軟件(普通服務器+LVS軟件)實現。如果訪問量比較小很多公司直接使用了nginx轉發到多台服務器上簡單實現。
3、熱備。
和上面負載均衡不同,是為了防止單台服務器宕機,然后准備了一套備用機器,這些機器會在宕機的情況下快速啟用,並頂上來。實際工作中,大多數公司會使用阿里雲這些雲服務商提供,並不會自己來實現,已經是很成熟的技術了。
4、nginx
這個應該大家都知道,為啥還要來說,就是很多LAMP 開發者對apache很熟悉,實際上公司Nginx 用的更多,因為不僅僅作為服務器來使用,更多作為反向代理來使用。 舉個例子:Nginx 啟動后監聽80端口然后對外提供http服務,那么如果系統有nodejs服務為9000,就可以使用 nginx 把業務轉發到9000端口,由nodejs提供服務。這樣可以實現在系統中多個應用共存,也是公司普遍的做法。
5、主從數據庫
我們自己開發的時候,很多都是程序運行和數據庫在一台機器上,那么當使用了多台應用服務器的時候,那就把數據庫拿出來單獨放到一台服務器上。因為這樣才能讓多台機器上應用程序使用同一個數據庫。很多公司單獨一台數據庫服務器性能不夠使用,配置主從數據庫服務器來做讀寫分離,從主機寫入數據保證數據一致,從叢機讀取數據保證速度,這種優化方案在公司非常普遍,但是具體要看具體應用的讀寫比。