J2EE在新浪SAE和阿里ACE的对比

搞了一个web应用,本地是基于Java8+Jetty 9开发的,这两天尝试部署到新浪SAE和阿里ACE平台,都能跑,但是遇到很多问题

先说结论,对于Java开发,ACE更加合适,遇到的坑比SAE少,毕竟淘宝是世界Java第一大站,新浪是国内PHP第一大站。

1. 0费用门槛

SAE不认证的话,没有免费的豆,没有豆,是不让跑应用的,过程中会提示余额不足。ACE则没有这个问题,一分钱不花也能跑起来。阿里财大气粗呀。

2. 不备案

SAE不备案,不实名的话,网页上始终有一个条幅在最上面,非常影响视觉,ACE则没有这个问题。

3. JDK版本

SAE是OpenJDK 1.7,ACE是Oracle JDK 1.7,这二者主要是版权的区别,实际区别不大,如果有,肯定是ACE的Oracle JDK更好。

4. J2EE容器

SAE是jetty 7,官方已经不维护了,servlet 2.0 API;ACE是Tomcat 7,servlet 3.0 API。项目原来使用了 servlet 3.0的anotation特性,还有新API,在jetty 7是无法运行的,而且容易冲突。SAE也不把jetty升个级,jetty 8官方都不维护了。

5. 虚拟机/物理机

SAE看起来似乎运行在64G内存,24核的物理机上;ACE运行在4核1G内存的虚拟机上;这点不能确认。虽然看起来SAE的好像配置更高,但是使用起来的感觉ACE更快。此外SAE这种不充分的隔离,后面会带来一些问题。写了一个纯计算的方法,本机运行2.4秒左右,SAE运行15秒左右,ACE运行3秒左右。我的感觉是对的,SAE就是很慢,虽然宿主机器看起来很NB。

6. 代码空间

SAE默认上传文件不超过50M,代码空间100M,我的项目恰好带上图片50M多一点,这点非常不爽;ACE则大方得多,空间1G,上传200M。

7. 应用的基本操作

SAE只有删除,上传新war,竟然没有重启;ACE则除了删除和上传新war,还有重新发布(重启,配置文件在远程,程序懒得写重新加载了)和下载。

8. 运行环境的jar

SAE,估计是因为在物理机上,SAE在容器中运行了很多自己的干货,比如SAE自己的SecurityManager,HTTP的代理,servlet也有一些。ACE则干净很多,SecurityManager是空的,没有HTTP代理。SAE这个jar多,而且都是老版本,在部署的时候遇到过jar冲突,在运行的时候也遇到过。比如http-client,SAE自带了老版本,我用的htmlunit在调用的时候就会失败,导致无法下载远程的配置文件。

全过程,每一步修改之后的包,两边都部署,到现在SAE因为httpclient包冲突的问题,还是不能正常工作。

9. 日志

SAE的日志比较及时,ACE的则比较滞后,而且经常看不到。


综上比较,J2EE网页应用选择PAAS平台,ACE是优于SAE的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值