Java Play!框架开发

时间:2012-07-30 10:07:18

标签: java scala amazon-web-services playframework-2.0

我在2个月前开始使用python / gae进行Web开发。我们从gae切换到亚马逊AWS和Java Play!。

  1. 如果我想在AWS上部署我的应用,是否会遇到问题?目前我可以使用Elasticbeanstalk,它是一个单一的解决方案。 Elasticbeanstalk与Play兼容吗!

  2. 我不知道Scala。由于编写良好的教程,我使用Scala进行模板/路由系统没有任何问题。但也许我会遇到未来的问题。如果我想使用Play,你会推荐我学习Scala吗?

  3. 我可以在本地运行我的应用程序而无需部署它,这给了我一个非常好的工作流程。是否可以为AWS开发并在本地测试我的应用程序?

3 个答案:

答案 0 :(得分:2)

回答你的问题

  1. 由于AWS Elastic Bean Stalk支持在其上部署Java Web Apps。在部署Play时不会有任何问题!项目

  2. 你不必是Scala Pro才能使用Play!。在使用Play时你会习惯Scala!并最终变得精通它,然后如果你想要你可以学习它。

  3. 当然,您可以开发适用于AWS的应用程序并在本地进行测试.Eclipse IDE有一个很棒的插件。

    http://aws.amazon.com/eclipse/

答案 1 :(得分:2)

哪个版本的Play!你在询问吗?

Beanstalk托管Tomcat并期望一个servlet技术(servlets,过滤器,捆绑为WAR),而Play! 2.0 Scala版本导致可运行的基于Netty的(非servlet)程序绑定到您选择的端口。玩! 2.1将支持servlet 3.0。 See this ticket for milestone information.

因此,您可能希望监控Play的servlet支持的进度,或者Beanstalk对基于Netty的技术的支持。

答案 2 :(得分:0)

如果您愿意升级到Play 2.3.x或更高版本,Boxfuse具有原生播放2支持以解决此问题。

Boxfuse为您创建一个最小的图像Play应用程序在VirtualBox和AWS上保持不变。

您可以使用Java或Scala编写应用程序,但来自Typesafe Play 2的应用程序对后者有很强的偏见。

要使用Boxfuse部署到AWS,您现在可以简单地执行boxfuse run my-play-app-1.0.zip -env=prod,这将自动执行:

  • 为您的Play 2应用创建最小的AMI
  • 创建弹性IP
  • 使用正确的权限创建安全组
  • 启动应用实例

所有未来更新均以蓝/绿色部署执行,零停机时间

这也适用于Elastic Load Balancers和Auto-Scaling Groups,Boxfuse免费套餐适用于AWS免费套餐。

您可以在此处详细了解:https://boxfuse.com/blog/playframework-aws

免责声明:我是Boxfuse的创始人兼首席执行官