您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關為什么C++很少用于Web后端開發,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
世界上主要的Web后端,都是用C/C++編寫的,比如谷歌、百度、騰訊、臉書等公司的后端,主要是C/C++。另外一些商務型公司,則采用Java。
其次,大部分互聯網底層平臺(操作系統、Web服務器、數據庫等),編程語言、相關擴展庫,也大都是C/C++開發的。
當然,這些基礎平臺的開發國內很少涉及,全都是用國外C/C++程序員開發好的產品(開源或商業收費)。完全沒有中國開發者參與,所以導致被完全忽視。
C/C++編寫的程序,占互聯網后臺90%以上的運算能力
C/C++性能最好,但是開發效率最低。因此除了基礎部件、調用頻繁的庫,普通網站大部分業務邏輯都會用開發效率更高的語言來編寫。
C/C++占互聯網后臺運算能力統計:
按平臺算約100%:C/C++幾乎包攬了全部Web后臺的運算能力。操作系統、Web服務器、數據庫、大部分編程語言、擴展庫全都囊括在內。
包括API和庫調用來算占90%以上:C/C++占用了互聯網后臺90%以上的運算能力。其他低性能語言直接承載的運算較少,大部分運算是調用的C/C++編寫的系統API和庫。
只按后端語言計算(大家常見的):C/C++后端幾大巨頭在用,還有一些局部領域應用,總量確實較少,但權重有半壁江山也毫不夸張。并且通常有封裝,前端直接看不到。
谷歌后臺內核主要是C/C++,代碼量是Windows的30倍。Python運算性能比C/C++慢200倍以上,只用于周邊和大數據AI的膠水語言。結果到處在誤傳谷歌后端用Python(來支撐大家常見的業務)。當然,Python Web服務器性能可以達到C/C++的1/10,可以承載一些負載較輕、或原型性質的業務。
為什么比C++慢200多倍的Python,服務器性能卻能達到C++的1/10呢?因為Python大部分時間都是在運行C編寫的擴展庫以及系統IO,本身py代碼運力占比只有5%。
只有那些巨頭網站,才有資源和能力用C++來寫后臺。因為海量服務器的成本差異,遠遠超過C++開發成本的增長。比如某服務Python要用1000萬臺服務器,PHP用300萬臺,Java用200萬臺,C++用100萬臺。肯定選C++,節省幾十幾百億。
比如臉書已經全面從PHP遷移到C++,服務器減少到原來的三分之一。但如果Python用10臺服務器、PHP用3臺、Java用2臺、C++用1臺服務器。肯定不會選C++,因為這時開發資源比服務器貴。
互聯網C/C++的替代品:Go
C/C++入門并不難學。但因為和硬件底層更近,所以程序形態與自然語言距離更遠,需要寫更多行語句和花更多時間去掌握。而奪命指針,即是性能飆升的利器,也是程序崩壞的元兇。因此,C++要更多時間去編譯、測試和檢查程序,才能保證穩定,不適合快速開發更迭。
實際上是后端開發語言太方便、靈活、穩定了,倒逼C++只能去做內核了。互聯網光一般的更迭速度,C++的緩慢接近凝滯的身段,令人沒法提起改進C++直接Web開發的興趣。索性直接寫出了PHP、http://ASP.NET、JSP等支持高效開發的產品。但當網站規模增大的時候,高并發和密集運算部分C/C++又成為了必須的選擇。
Go就是谷歌為了解決這些痛點,應運而生的。具備接近C的性能,但更安全快速、更具備互聯網基因,目前在后端增長最快。
關于為什么C++很少用于Web后端開發就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。