首先呢,Java也是编译型的语言。Java的编译分为两个步骤,第一步是从源代码到bytecode,也就是.class文件。我们日常看到的java jar包,其实就是bytecode的分发形式。第二步是在运行时,java虚拟机会和jit合作,把bytecode在需要的时候编译成native code。所以说呢,你这个链接里的跑分比较,其实大家跑的都是编译后的native code。
其次,web框架不单单要看中对语言的执行效率,还要看IO的效率。当然这也没什么花头,java的很多框架和go的异步IO如出一辙, 说白了还是借助linux操作系统中的epoll等来减少进程堵塞。于是很多跑分中,语言的执行效率变得次要,在充分优化和合理使用nonblocking IO的情况下,一些解释型语言也能取得很好的成绩。
最后,也是最重要的,其实你看这些跑分,框架的性能都好的不行不行的,远远超过一般应用的需要。其实在实际应用中,我们的业务逻辑会更复杂,上下游服务也会更多,其实就算是好多人瞧不起的增删改查操作,并发大了也极容易产生性能瓶颈。换句话说,编程语言和框架本身是不容易成为性能瓶颈的。所以,我建议应该更多的从开发难易程度,以及以后项目长期维护的成本上来选择语言和框架,而不是看跑分。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有