请大神赐教:为什么面向大众的网站多以LAMP架构居多?而javaee+linux+jboss/weblogic..+mysql很少?成本差不多呀,不要讲开发周期
RT,虽然javaee开发周期比较长,但可扩展性,维护性,安全性相比更高一点啊,难道是面对高并发的访问速度?不解,求大神赐教。。。
[解决办法]
首先,针对大多中小公司,原因私以为有二:
1.成本问题,你想想请一个java程序员的工资要多少,同样工资可能可以请两到三个php程序员;
2.你也说了开发周期长,中小企业做项目比较类似创业公司,不要求一个产品一开始就很强大很完美,而是以“可运营”为优先条件,如果是做网站,他们要求一个月上线就不会容忍你开发一个月再调试一个月,往往注重先机,而不是程序质量。
当然大公司或者规范化的公司肯定偏向质量,漏洞百出的产品是自砸招牌。大公司有两种,一种是从小公司转到大公司的,你会发现很多时候他们会换开发语言,比如京东,当然原因可能是多种多样的,也不一定就是编程语言不好(比如用asp.net 服务器用win系统的,MS要来收钱之类的。。),另一种是大公司开发新产品,这种除非产品开发非常赶,无法忍受j2ee的开发周期(这个开发周期其实是因人而异的,XP,敏捷开发等又不慢),或者没有java的开发经验,之前的团队擅长php。
总之,原因可能有很多,但最可能还是市场促成的现状,话说java其实在其他方面还是有很多人用的
[解决办法]
性能的确是一个重要影响因素.
面向大众的网站,和一个企业内部网的使用需求,差异很大,不仅是页面请求,还有数据存取甚至是数据存储管理的形式(比如NOSQL)等都决定了这个结果的不同.
从人员成本上,一楼已经说了.
但从软件成本上,并不象楼主所说就没问题了.JAVA被ORACLE收购之后,隐忧就已经存在了.JAVA和相关的成形成套的产品已经很多了,随时可能提出商业收费协议,就看它日子过得好不好了.如果按你说的,都用JAVA配合其它免费产品(MYSQL其实也握在ORACEL手里,你说它花大价钱收购这些免费软件的目的何在?),而最终导致ORACLE本身主打产品市场份额大幅收缩,不仅不能满足不断扩张壮大的欲望,甚至都需要裁员的话,那它会怎么做?所以,眼前的免费不等于长久的安逸.现在JAVA已经变成一颗潜伏炸弹了.事实上这也正是ORACLE和微软这些大厂商的策略,先让你都用上依赖上,然后再找机会找目标下手.所以微软对D版的打击才那么有控制,有倒霉的被说成是枪打出头鸟,实际上都是被人家故意养的,养肥的再拎出来宰.
其实从安全性来讲,这是一个很久以来很多客户和开发公司都存在误区的看法.JAVA本身其实谈不上多少关键的安全性.一个软件或网站的质量和性能以及安全性等各方面的指标,完全取决于是由谁或谁们做的,而不是他用什么做的.JAVA写的漏洞百出的软件和网站,我见得多了.张嘴闭口模式和思想的JAVA程序员,实际基础和经验完全不合格的,我也见多了.而颇被诟病的ASP,也有很严密的作品.包括可扩展性,维护性等等,都不是JAVA独具和一定最好的,一个差手就算用火箭导弹,都没有一个好刺客的匕首致命.21世纪什么最贵?人才嘛,是语言吗?当然不是.
说到这个,使用JSP程序员可以说是相对比较危险的,由于多种因素,使得不合格的JSP程序员有更好的隐蔽性,在招聘考核中往往都能混过去,在项目前期甚至中期也常常都表现不出来,到了后期才表现有时就晚了.所以我对JAVA程序员的招聘考核总结了一些自己的方法.但新手基本都达不到,因为他们接受的培训就不行.所以就成了区分新手和有一定工作经验的成手的方法了.当然,这不是说不给新人机会,而是说他们学习的时候,应该注意循序渐进,打好必要的基础.
[解决办法]
一个字:成本。