tomcat - Grails 应用程序在生产服务器上的首选 Apache Tomcat 版本

标签 tomcat grails

我们正在使用 Grails 2.5.0。每个 Grails 版本都会为 tomcat 插件(以及其他一些)推荐一些插件版本,因此 Grails 2.5.0 推荐 Tomcat 插件 7.0.55.2。

当我们转到生产服务器时,是否有必要在生产服务器上使用实际相同版本的 Tomcat 进行部署,或者我们可以使用其他升级版本,如 1.7.xx 等相同版本?

嗯,在过去的 2-3 年里,我们还没有遇到任何与此相关的问题,但我想对此进行更多澄清。

最佳答案

对于各种 Tomcat 插件版本,我们一直使用最新的 7.x 版本的 Tomcat,并在发布新版本的 Grails 时使用最新的插件版本。与此同时,我们还发布了使用 Tomcat 8 的插件的新版本,目前版本为 8.0.21。

此时 Tomcat 8 相当稳定并支持 Servlet 3.1 规范,而 Tomcat 7 仅支持 3.0,因此 Tomcat 8 应该是 Tomcat 7 的直接替代品,如果您可以使用更新的功能想。此外它应该更快并且使用更少的内存,但我还没有看到任何正式的基准测试。

话虽如此,用于 run-app 的 tomcat 插件几乎与您在生产中使用的插件无关。一般来说,任何最新的 servlet 容器(即支持 Servlet API 2.5+ 的容器)都应该可以正常工作,因为 Grails wars 是独立的标准 war 文件。您可以使用 Jetty、WebLogic、JBoss 等。

一般来说,您应该在开发中使用与生产中使用的内容相当接近的库和服务器,但这不是必需的,只是一个好主意,因为您更有可能及早发现不一致之处。数据库也是如此——使用默认的内存 H2 数据库开始,如果您在生产中使用 H2,则继续使用它,但使用本地 MySQL/PostgreSQL/Oracle/等。在版本和配置上与您的测试和生产服务器相似的服务器。

关于tomcat - Grails 应用程序在生产服务器上的首选 Apache Tomcat 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29675188/

相关文章:

java - 从 Tomcat DBCP JDBC 连接池获取连接对象

spring - 如何保护个人金融网络应用程序?

grails - 如何在Grails 3.1.7中使用i18n消息

json - 如何将JSON保留到具有嵌套成员的Grails域对象中

grails - Grails:获取具有belongsTo关系的元素列表?

javascript - 在插入到数据库之前验证表单控件

session - 是否可以与多个浏览器窗口共享一个 HttpSession 对象?

java - Websockets Tomcat 7 在现有项目中不起作用

debugging - 针对 Grails 运行时环境交互式运行代码

grails - babel-asset-pipeline 1.3.1无法正常工作?