百科问答小站 logo
百科问答小站 font logo



为什么Go的web框架速度还不如Java? 第1页

  

user avatar   wangbeinan 网友的相关建议: 
      

首先呢,Java也是编译型的语言。Java的编译分为两个步骤,第一步是从源代码到bytecode,也就是.class文件。我们日常看到的java jar包,其实就是bytecode的分发形式。第二步是在运行时,java虚拟机会和jit合作,把bytecode在需要的时候编译成native code。所以说呢,你这个链接里的跑分比较,其实大家跑的都是编译后的native code。

其次,web框架不单单要看中对语言的执行效率,还要看IO的效率。当然这也没什么花头,java的很多框架和go的异步IO如出一辙, 说白了还是借助linux操作系统中的epoll等来减少进程堵塞。于是很多跑分中,语言的执行效率变得次要,在充分优化和合理使用nonblocking IO的情况下,一些解释型语言也能取得很好的成绩。

最后,也是最重要的,其实你看这些跑分,框架的性能都好的不行不行的,远远超过一般应用的需要。其实在实际应用中,我们的业务逻辑会更复杂,上下游服务也会更多,其实就算是好多人瞧不起的增删改查操作,并发大了也极容易产生性能瓶颈。换句话说,编程语言和框架本身是不容易成为性能瓶颈的。所以,我建议应该更多的从开发难易程度,以及以后项目长期维护的成本上来选择语言和框架,而不是看跑分。


user avatar   zhao-ce-33 网友的相关建议: 
      

克劳备忘录也好,凯南电报也好,有两大共同点。首先,都是以现实主义的眼光去分析双方的关系。然后,给出的建议都是阳谋,并不是什么不可告人的阴谋,执行起来需要的不是鸡鸣狗盗的小聪明,而是惊人的意志力。

而美国现在战略界现实主义被边缘化,我推测,布热津斯基,基辛格那帮人应该写过不少。不过没所谓,美国能执行大战略的时代过去了。现在这一代精英上半年能管下半年就已经很了不起了。一个需要两代人以上持之以恒去完成的大战略,搞出来他们也执行不了。

冷战时期,从杜鲁门艾森豪威尔到肯尼迪尼克松,最后到李根老布什,个人性格和政治偏好差距不要太大,但是都忠实地完成了他们历史任务,沿着围堵政策做下去。这种战略定力和延续性,世间少见。在中国领导集团上能看见一些相似的东西,但是我们离得距离太近,反而看不清。但在美国精英层身上完全看不到这一点。

个人愚见。




  

相关话题

  并发与并行的区别是什么? 
  如何让停留在语法层面的 C++,变成实际工程中的 C++? 
  一个文件分发服务器,要支持多个(几千个)请求下载,文件比较大,用java socket,ftp还是http支持? 
  大前端(node.js)抢得动后端的饭碗吗,前端和后端总体薪资类似,这是不是培训班让我们看到的软广告? 
  为什么 Go 和 Rust 常提供静态编译好的 Linux 程序,而 C 不行? 
  大文件传输主要技术瓶颈都有哪些?如何处理的? 
  C「带坏了」多少程序语言的设计? 
  为什么 Go 语言在某些方面的性能还不如 Java? 
  这篇博文c#比JAVA慢这么多 为什么? 
  为何在AI领域Java没有python火? 

前一个讨论
当奸商用趋肤效应辩解线材调音是有用时,如何用科学事实对他打脸?
下一个讨论
棱堡为什么能够抵御火炮攻击?





© 2025-01-31 - tinynew.org. All Rights Reserved.
© 2025-01-31 - tinynew.org. 保留所有权利