performance - grails 从 CDN 提供 index.html

标签 performance grails amazon-web-services amazon-elastic-beanstalk

我希望将我的 grails 应用程序部署在我的域的根目录中:

www.example.com

而不是

www.example.com/myapp

但是 www.example.com/index.html 将是静态的(静态 html、图像等)。我担心应用程序服务器提供主页的性能。我可以配置我的 grails 应用程序/cdn 来提供index.html 及其内容,并让应用程序服务器处理动态页面吗?

我使用的是grails 2.2.4 我将使用 Amazon S3 + ElasticBeanstalk + CloudFront。

或者我应该担心性能吗?我是 grails 新手,但我的理解是静态内容应该由网络服务器(Apache)提供服务。由于没有 apache,我正在寻找另一个选项来减轻网络服务器的负载。 CDN 似乎是个好主意。

最佳答案

你当然可以做到。我个人的建议是将图像保存在 S3 上,并在此基础上使用 Cloud Front。除非您的静态 HTML 本身太大,否则我建议让 Grails 成为 Grails,并像典型的 Grails 项目那样利用 Grails 资源来处理您的 JS 和 CSS - 即使您的索引页面不会正确执行任何动态操作现在。打破 Grails 约定越多,构建和持续集成之类的事情就会变得越复杂。看看使用缓存,缩小插件,性能非常好。

至于部署到根“/”上下文,您可以通过 Tomcat(或任何地方)部署的“prod war ROOT.war”来完成此操作,或者您可以将其构建为“whateverapp.war”并处理路由对于更复杂的情况,使用 Apache mod_jk 进行规则。

我已经完成了大约十几个 Grails 项目,并且现在使用非常相似的架构。

关于performance - grails 从 CDN 提供 index.html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20433742/

相关文章:

php - 是什么减轻了 PHP 服务器的负载 : SimpleXML or json_decode?

python - 设置 csr_matrix 的行

unit-testing - Grails-在单元测试中模拟servletContext

javascript - Grails:我应该使用 Controller 还是JavaScript来运行查询并相应地更新页面?

grails - Grails-代理配置

java - 连接到 AWS Neptune

amazon-web-services - 加密 .aws/credentials

performance - 如何在 Octave 中有效地从 csv 读取大矩阵

python - 转置 Pandas DataFrame 中的列子集,同时使用其他列作为分组变量?

amazon-web-services - 地形 | AWS ECS 服务 |每个 tf apply 所需的计数值更改