c++写后端程序响应速度强无敌

2019-08-22 18:28:50 +08:00
 mq4079

这两天用 c++重写了一段用 node 写的后端程序,相同的业务逻辑,mongodb 的 CURD 操作之类的,没用奇巧淫记没有任何优化,编译出来的程序响应速度实测比 node 快 10 倍左右,虽然 c++写起来麻烦一点点但为了性能还是 ok 的,v 友门公司用 c++写后端的多吗?

20130 次点击
所在节点    C++
117 条回复
hhyvs111
2019-08-23 00:14:20 +08:00
go 能写游戏服务端吗
ppokyou
2019-08-23 03:50:11 +08:00
@chinvo net core 表现咋样?正式上线吗?
rainymorn
2019-08-23 04:35:31 +08:00
然而,PHP 工作多啊
takemeh
2019-08-23 05:15:41 +08:00
zuikren
2019-08-23 05:54:50 +08:00
试试 golang
chinvo
2019-08-23 08:39:04 +08:00
@ppokyou #22 表现良好,正式上线

有一些小坑,基本上官方文档都有说明和解决方案
lihongjie0209
2019-08-23 08:45:40 +08:00
io 密集型的任务差这么多, 你让前几年大火的 Python 情何以堪
araraloren
2019-08-23 09:04:33 +08:00
个人觉得说起调试来,编译语言的工具链是最方便的
Keyes
2019-08-23 09:25:10 +08:00
@clino 求出处
MaiKuraki
2019-08-23 09:32:09 +08:00
666
Eds1995
2019-08-23 09:40:15 +08:00
@MeteorCat 特别是 actix web
clino
2019-08-23 09:48:34 +08:00
@Keyes https://www.oschina.net/news/108368/microsoft-is-exploring-to-use-rust-as-more-secure-code
微软正探索将 Rust 作为 C 和 C++ 的安全替代方案
augustheart
2019-08-23 09:49:58 +08:00
@clino 微软冗余人员多,项目组多,啥都能掺和一脚。而且那也只是微软安全组的人推荐而已。你让微软拿 rust 重写个记事本试试,保证头摇得比谁都快。
rust 也没有吹的那么牛,先不说一大票库的版本号还在 0.x 甚至 0.0x 的阶段,rust 的优势也只是画地为牢,不安全的事都不让你做,从而避免水平不够的人写出安全代码。但它总体性能超过上 c/c++是不可能的,就算用 unsafe 生成的代码都不如 c/c++直接。而说到开发效率那就更没法谈了,rust 的开发效率怕是比 c 还差点。
augustheart
2019-08-23 09:50:42 +08:00
@augustheart 从而避免水平不够 ->从而保证水平不够
clino
2019-08-23 10:02:54 +08:00
@augustheart 我自己刚试用了 rust 开发的一款和 lucene 功能类似的 fts 引擎 tantivy,在 python 里安装和调用起来都非常方便,实测性能也很好,所以我对 rust 印象很好,认为它的开发效率应该也很不错
fyyz
2019-08-23 10:06:11 +08:00
你说的后端是指 Web 后端吗?
tt67wq
2019-08-23 10:09:38 +08:00
瓶颈不都在数据库那边吗?换个语言怎么会有改善?
augustheart
2019-08-23 10:12:31 +08:00
@clino 太繁琐了,为了安全增加了很多心智负担,编译通过都很费事。
我个人其实挺喜欢这个语言,但是不觉得它适合快速开发。它的性能只是相对其它语言来说而已,没有 gc,静态编译这两点就是性能的保证了。但是从机器码的层次来看,至少目前相对 c++还是太啰嗦了。c++那丧心病狂的编译时间带来的优化程度别的语言还是挺难赶上的。
谈到性能,c/c++的指针往那一站,除了汇编,别的语言都是直接抬下去的命……(不谈针对某些方面特别优化的专用语言,比如据说比 c 还快的 fortran,我没用过,听同事吹过)
SuperMild
2019-08-23 10:15:00 +08:00
@augustheart rust 开发效率比 C 差??恐怕全世界只有 Linus 同意你这个说法。

你提到一点很有意思:rust 的优势是不安全的事都不让你做,从而保证水平不够的人写出安全代码。

这正是 rust 的巨大优点,也是 rust 主要想解决的问题。运行效率 c/c++ 之下其他语言之上,但注意了,水平不够的人也能用好!达到这个高的运行效率,还能轻松确保内存安全,这就非常诱人了好吗。

c/c++是可以运行效率高那么一丢丢,但是写起来要么提心吊胆的,要么必须水平很够(这对于程序员来说是学习成本,对于公司来说是招人成本)。
dosmlp
2019-08-23 10:15:30 +08:00
差 10 倍很正常,很多人其实不知道 c++性能有多强,总以为其他语言的性能已经接近 C++了,其实差的远,更不用说这还没优化

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/594287

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX