我有一个.NET开发背景,但相对较新的Java世界。 我们已经与JAX-RS大多由移动平台所消耗启动的RESTful服务开发(公共Web API)的(Android设备,iPhone,Windows手机等)
- 我们需要适当的服务器,如Tomcat或Glassfish的等的选择提供一些指导? 请分享理由为好。
- 还请指导我们的JAX-RS的决定是否适合于构建RESTful服务。
我有一个.NET开发背景,但相对较新的Java世界。 我们已经与JAX-RS大多由移动平台所消耗启动的RESTful服务开发(公共Web API)的(Android设备,iPhone,Windows手机等)
Tomcat是只有一个servlet容器,它只是意味着它不会提供对Java EE功能的支持。
不是看RESTful服务更多,看你打算用它来实现你的层的功能是什么。 如果您正在使用的Servlet坚持/ JSP只,则在Tomcat肯定会是一个非常合理的选择。 如果您需要使用JavaEE的功能,再看看GlassFish的。
纯粹在功能方面,GlassFish都可以做的一切Tomcat的就可以了,多了很多,因为它是一个完全兼容的JavaEE应用服务器。 但是,请注意,Tomcat正在使用了很多复杂的应用很大的影响(不使用Java EE功能)。
在性能方面,Tomcat是轻量级的,启动非常快,并且在Eclipse环境中得到良好支撑。 GlassFish的启动是有点慢(大约在我的笔记本电脑可怕11秒),但展开时的速度极快。
Tomcat有基本的应用程序的部署,但JNDI和类似的资源配置(如用户CONFIGS)管理器应用程序必须通过手工编辑XML文件来完成。 Glassfish的有一个很好的管理控制台,它允许你做这一切从无需手动配置编辑中央UI。
不管怎么说,就是我得到的是,你的选择应完全基于你打算从Java / Java EE的API使用的东西,而最低限度地适合该法案的服务器。 不要以任何流行的共识去,因为你的要求是你最好的指导。
至于与JAX-RS实现来讲,我看不出有任何的担忧存在。 我已经与新泽西州工作过,这里有一个先睹为快看着两个: http://www.slideshare.net/pelegri/jersey-and-jaxrs-presentation
最后,至于SSL而言:Tomcat和GlassFish会很乐意做SSL,没有问题或者任何责任。
GlassFish的SSL啧啧: http://javadude.wordpress.com/2010/04/06/getting-started-with-glassfish-v3-and-ssl/
祝好运。
你可以看看播放框架 。 它是可扩展的,无状态的,基于REST的Web框架。 通常它不需要如Tomcat应用服务器。 它有它自己的基础上内置高性能网络服务器的Netty 。 但是,一个应用程序可以被包装成的.war如果你需要它。
构建RESTful Web服务使用Play将不会是一个问题。
我们用它在生产环境和相当满意的。 发展是非常快速和容易。 它像Ruby on Rails的在Java中的世界。
编辑
举个例子,你可能会看到这个帖子。