zoukankan      html  css  js  c++  java
  • JAVA是否最适合企业应用开发?

    ·

    JAVA是否最适合企业应用开发?

    当我刚入行做程序员的时候,那是在01-02年,铺天盖地的都是java,j2ee,公司也使用java作为开发语言,我也就随大流加入javaer阵营。 
    从那时起,各种java的术语,框架,模式铺天盖地。被动接受后也理所当然的认为java就是最适合企业开发的东西。 
    后来一个项目使用了oracle,weblogic,吞吐量单JVM也就80req/s,还经常终止服务,挺好的服务器,业务也不复杂啊。因为并发不能满足,又扩容了设备。那时就有个想法,试试别的架构。后来把相同的逻辑在LAMP上实现了一遍,第一次写php,没什么经验,第一次配mysql也没什么经验,但结果在同一台服务器上可以做到500req/s。这件事就让我对java产生了一些疑问。

     
    从以下几点讨论 
      1、开发效率:如果和C++比,java的开发效率是要好一些的,但是和php不在一个水平线上。 
      2、易维护性:java语言本身没有太多可以出格的用法,C++和php都可能写成一些极难理解的代码(python/ruby也一样),但是C++11和php5以后,代码的规范性还是比较好保证的。 
      3、运行效率和可靠性:这个要分开说 
    在web层上,java的thread是pthread,应用服务器一般要起线程来维护请求,nio connector是不适合thread local的框架的。php使用nginx+fcgi,是按照cpu核心数启用进程的方式,不用担心线程安全问题。java共享heap,在java.util.concurrent出现之前,容器类的线程安全很低效(严重感谢Doug Lea,他还是collections的作者),java的类库都是java写的,很多性能n并不好。php是的哲学是在请求时获得资源,请求结束释放,同时类库都是c/c++完成的,简单高效。在php中短连接性能很好,在java联个什么都需要连接池。 
    在有复杂运算的场景下,php的性能确实会是一个很大问题,而java性能会好很多,但是java并不能有效管理大内存(基于 mmap的direct buffer也还不理想),同时fullgc的问题对于响应及时性要求高的系统根本不能用。这部分是c/c++的天下。 

    所以我的理想框架顺序是 

    php 
    php+thrift+java 
    php+thrift+c++ 
    

      

    总之,个人认为java是大厂联合推销软硬件的阴谋。嘿嘿。。。

    转载自:  作者:hanxuebo  链接:https://www.iteye.com/blog/hanxuebo-1845849

    ·

    ··············

  • 相关阅读:
    up6-chrome 45+安装教程
    HttpUploader7-授权码配置
    jsp-MySQL连接池
    WordPaster2-正式包布署说明
    HTTP文件上传插件开发文档-ASP
    HTTP文件上传插件开发文档-JSP
    eWebEditor9.x整合教程-Xproer.WordPaster
    42. Trapping Rain Water
    41. First Missing Positive
    40. Combination Sum II
  • 原文地址:https://www.cnblogs.com/05-hust/p/12341876.html
Copyright © 2011-2022 走看看