此网站为连连棋牌演示网站
当前位置:首页 > C++ > 正文

为什么C++很少用于Web后端开发?

01-12 C++

  同样面向对象,为什么Web后端开发中 Java应用的很广泛,C++用的很少呢? 目前想到的可能问题有: 1. 是C++本身的语言特性问题? 2. 没有一个像Oracle一样的公司推动C++的Web开发标准指定以及相关库的开发? 3. C++学习成本太高? 4. 还是其他? 哪个是主要问题呢?

  比如谷歌、百度、腾讯、脸书等公司的后端,主要是C/C++。另外一些商务型公司,则采用Java。

  其次,大部分互联网底层平台(操作系统、Web服务器、数据库等),编程语言、相关扩展库,也大都是C/C++开发的。当然,这些基础平台的开发国内很少涉及,导致被完全忽视。

  C/C++性能最高,但是开发效率最低。因此除了基础部件、调用频繁的库,普通网站大部分业务逻辑都会用更高效的语言来编写。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++,节省几十几百亿。

  但如果Python用10台服务器、PHP用3台、Java用2台、C++用1台服务器。肯定不会选C++,因为这时开发资源比服务器贵。

  C++入门并不难学。但因为和硬件底层更近,所以程序形态与自然语言距离更远,需要写更多行语句和花更多时间去掌握。而夺命指针,即是性能飙升的利器,也是程序崩坏的元凶。因此,C++要更多时间去编译、测试和检查程序,才能保证稳定,不适合快速开发更迭。

  实际上是后端开发语言太方便、灵活、稳定了,倒逼C++只能去做内核了。互联网光一般的更迭速度,C++的缓慢接近凝滞的身段,令人没法提起改进C++直接Web开发的兴趣。索性直接写出了PHP、、JSP等支持高效开发的产品。但当网站规模增大的时候,高并发和密集运算部分C/C++又成为了必须的选择。

  Go就是谷歌为了解决这些痛点,应运而生的。具备接近C的性能,但更安全快速、更具备互联网基因,目前在后端增长最快。

版权保护: 本文由 首页 原创,转载请保留链接: http://www.wsxzr.com/News/347.html

博客主人bfyysw
男,文化程度不高性格有点犯二,已经20来岁至今未婚,闲着没事喜欢研究各种代码,资深技术宅。
  • 文章总数
  • 43420访问次数
  • 建站天数
  • 标签