skyworker
2014-12-29 10:13:42 +08:00
Java 或者说J2EE,是从2004左右开始兴起的,主要用于各种"企业系统",因为这些"企业级"的软件都是用DB2或者Oracle这样的数据库,而和这些数据库配对的中间件,数据库厂家都建议用JAVA,没人敢用PHP连这些数据库.
04年左右的时候,国内的互联网企业还不多,比较文艺范的也就是豆瓣(用的是Python)这样的,如果J2EE系统要购买各种商业版本的软件太贵,限制了J2EE在互联网企业的使用(当然也有JBoss这样的免费版本,不过商业服务费也不便宜).
再者,同样的硬件配置,用J2EE的话,只能提供10个并发,但是用LNMP的话,估计能跑1000个并发,这些原因导致了互联网企业很少用J2EE,也见过用J2EE的,最后好像活下来的不多,例如饭桶网,从侧面证明了互联网企业用J2EE,的确至少证明CTO的眼光是问题(这部分CTO大多是从"企业级软件"转过来的,缺乏对互联网企业精神).
还有就是效率.有句俗话说得好"Java是十行代码能干一行代码是事情;PHP是一行代码能干十行代码的事情".互联网企业需要快速的迭代和创建原型,J2EE又笨又大的体系的确不适合.举个例子,J2EE改一个页面,甚至需要重启笨重的中间件容器才能实现.也就是,你改个页面,不说改代码要多少时间,但是等测试效果,就要等几分钟的容器重启.
再说淘宝.J2EE这些东西好处就是和Oracle或者DB2这样的超大型数据库能配合的天衣无缝,taobao这样的类金融行业,当然是不允许后台app在处理订单的时候有任何的闪失的,所以taobao后台用java,并不是出于java有多好,只是不得不用.