hujianxin
V2EX  ›  问与答

JVM 占资源就是大吗?

  •  
  •   hujianxin · Nov 29, 2015 · 2496 views
    This topic created in 3848 days ago, the information mentioned may be changed or developed.
    同样复杂度的软件,使用 python 会不会更耗资源?例如如果使用 python 或者 ruby 编写一个 IDEA ,那这个 IDEA 会不会更加耗资源。

    在我印象中, JVM 就是一个大家伙, python , rvm 是一个小家伙,事实是这样的吗?
    14 replies    2015-11-30 13:45:35 +08:00
    zhuangzhuang1988
        1
    zhuangzhuang1988  
       Nov 29, 2015
    用 python, ruby 写 idea 得卡死...
    python/ruby 的 vm 都应该不属于工业级的..
    xufang
        2
    xufang  
       Nov 29, 2015
    想用 python 写大型 GUI 软件的, 建议先看下《梦断代码》
    xufang
        3
    xufang  
       Nov 29, 2015
    我也修了不少 python 代码了,结论就是写写 web 这些不带界面的还行。要是拿来写 GUI , 千万别写大型项目。否则,药丸。
    Cloudee
        4
    Cloudee  
       Nov 29, 2015
    我觉得 nodejs 倒是个候选, JIT 优化很完全,不过大型项目的内存占用不知道
    buckethead1
        5
    buckethead1  
       Nov 29, 2015 via Android
    不是
    intellij 用脚本语言来写会更卡
    hujianxin
        6
    hujianxin  
    OP
       Nov 29, 2015 via iPhone
    @zhuangzhuang1988 那也就是说 jvm 并没有我想象中的笨重了?我的大脑中一直把 jvm 定位为完善而笨重。现在 ruby 的虚拟主机已经很多了,而且价格不高,但是 jvm 的就相队不多,这与 jvm 太重有关吗?
    6IbA2bj5ip3tK49j
        7
    6IbA2bj5ip3tK49j  
       Nov 30, 2015 via Android
    @hujianxin JVM 上跑的框架太重,内存不够吃。
    qw7692336
        8
    qw7692336  
       Nov 30, 2015
    升级了一下电脑配置, idea 终于不卡了
    echo1937
        9
    echo1937  
       Nov 30, 2015
    Intellij IDEA 用 Swing 开发,虽然争议大,但效果还不错。

    JS , Py , Ruby 好像都没有什么特别好用的 gui 库,至少 python 的 TK 就是个逗比,总不能用 web 做吧...

    这个场景下,事件驱动、异步编程、非阻塞 IO 的优点反而没啥帮助。
    Cloudee
        10
    Cloudee  
       Nov 30, 2015 via iPhone
    @hujianxin JVM 占据的最小空间太大了,基础类库, JIT ,反射用的元数据就不知道多少兆,分代 GC 中每个代都要留有空间,各种常量池等等等等,头 100 兆留给自己的程序太少了,几百兆之后其实还是挺紧凑的...
    plqws
        11
    plqws  
       Nov 30, 2015
    @Cloudee 起步 40m ,有的程序跑着跑着就上 300m 了😂
    hujianxin
        12
    hujianxin  
    OP
       Nov 30, 2015
    @xgfan

    @Cloudee 感谢,大体有点明白了。。。
    hujianxin
        13
    hujianxin  
    OP
       Nov 30, 2015
    @xgfan 请教一下,想 Clojure 这样的语言,他也是跑在 jvm 上面的,你刚才说不是是跑在 jvm 上面的框架重,意思是想 spring 类似的 java 框架重吗? clojure 这个跑在 jvm 上面,它重不重呢?
    6IbA2bj5ip3tK49j
        14
    6IbA2bj5ip3tK49j  
       Nov 30, 2015
    @hujianxin coljure 不清楚,我也是小白,只是使用 coding 的演示空间,发现 256M 运行 jersey+spring+hibernate 会启动失败,把内存加到 512M 就可以正常运行了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1068 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 63ms · UTC 18:27 · PVG 02:27 · LAX 11:27 · JFK 14:27
    ♥ Do have faith in what you're doing.