JVM救不了Java (转载)

简介:

面临应用程序网络化的发展趋势,我认为Java由于其设计架构上的弊端,在网站开发上将很难有大的作为。与此相反,以PHP为代表的动态语言则天生就适合网络的开发模式。

——Zend公司CTO Andi Gutmans

习惯和支持Java的人们,往往认为PHP和其他动态语言只属于那些不懂编程的人——即使它是LAMP(Linux+Apache+MySQL+PHP)这一盛行的开源架构中的一员,也不能保证它有什么前途。

然而,他们忽略了应用程序网络化的发展趋势,这不仅包括媒体和电子商务网站,还包括CRM、ERP、报表和文档管理等。我认为,Java由于其 设计架构上的弊端,在这些领域会有些力不从心。与此相反,以PHP为代表的动态语言正是随着上世纪90年代网络的井喷式发展而诞生的,它们天生就适合网络 的开发模式。一大批具有代表性的网站都是使用PHP进行开发的,如Wordpress、Drupal、mediaWiki、osCommerce、 SugarCRM等。

尽管很多Java厂商已经意识到网站开发的重要性,并开始努力,但它们始终都无法摆脱“强大”的语言特性带来的限制——网络开发的总体成本居高 不下。现在,Java厂商主要依靠JVM(Java虚拟机,Java的底层执行环境)来实现网络开发,它与Java配合得很好,也能够一定程度上支持多语 言。然而,这种模式并未采用LAMP的松耦合模型,而是还想保住Java原有的优势。这样,它们通常不愿意丢掉对客户工作的控制权,并经常干预JVM所支持的动态语言。

尽管对手实力不容小觑,但我坚信市场的主流并不会改变,LAMP这一开源架构将依然盛行。这是因为:首先,主要的动态语言都有强大的开发者社区 作为支持,它们坚持不懈地改进这些语言的功能,而JVM永远只能落后于这些事实上的标准;其次,由于JVM并不是专为动态语言而设计的,所以对于实际应用中不断出现的问题,Java厂商还有很多完善工作需要做;第三,现代网站开发通常需要很强的可扩展性,因此,对系统的高强度访问处理能力要求很高,这也与 JVM的设计初衷相冲突;第四,对应芯片的多核发展趋势,使用多进程模式的动态语言,比使用多线程模式的JVM具有更好的稳定性和可靠性;最后,LAMP 架构使得开发者容易入门,但同时,它也适用于雅虎和Facebook这样的大型网站。

总而言之,我认为动态语言将继续是网络开发的标准。尽管JVM对动态语言的支持会吸引一些Java客户,但它永远无法阻止开源运动的潮流。



 本文转自 dog250 51CTO博客,原文链接:http://blog.51cto.com/dog250/1274001

相关文章
|
9天前
|
Oracle Java 关系型数据库
java体系结构和jvm
java体系结构和jvm
|
1月前
|
Java 编译器 测试技术
滚雪球学Java(03):你知道JDK、JRE和JVM的不同吗?看这里就够了!
【2月更文挑战第12天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!!
103 4
|
2月前
|
算法 Java 关系型数据库
掌握这3个技巧,你也可以秒懂JAVA性能调优和jvm垃圾回收
JVM 是一个虚拟化的操作系统,类似于 Linux 和 Window,只是他被架构在了操作系统上进行接收 class 文件并把 class 翻译成系统识别的机器码进行执行,即 JVM 为我们屏蔽了不同操作系统在底层硬件和操作指令的不同。
21 0
|
1月前
|
存储 Java 数据安全/隐私保护
【JVM】Java虚拟机栈(Java Virtual Machine Stacks)
【JVM】Java虚拟机栈(Java Virtual Machine Stacks)
35 0
|
20天前
|
缓存 Java C#
【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍(一)
【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍
60 0
|
1月前
|
存储 缓存 安全
[Java基础]——JVM内存模型
[Java基础]——JVM内存模型
|
1月前
|
算法 Java UED
【JVM】分代收集算法:提升Java垃圾回收效率
【JVM】分代收集算法:提升Java垃圾回收效率
19 0
|
1月前
|
Java
【JVM】深入理解Java引用类型:强引用、软引用、弱引用和虚引用
【JVM】深入理解Java引用类型:强引用、软引用、弱引用和虚引用
85 0
|
1月前
|
存储 安全 Java
【JVM】Java堆 :深入理解内存中的对象世界
【JVM】Java堆 :深入理解内存中的对象世界
49 0
|
1月前
|
存储 安全 前端开发
什么是Java虚拟机(JVM),它的作用是什么?
什么是Java虚拟机(JVM),它的作用是什么?