我有一个使用EJB 3 + Hibernate编写的Java项目,它托管在Glassfish服务器上。现在要重写所有内容并将其移至Google App Engine。什么是最简单的方法来做到这一点。我们是否应该开始使用Spring来创建实体来管理数据? 我们希望摆脱EJB + Hibernate的原因是cpu开销和开发。有时需要10分钟才能重新启动服务器以测试更改。 我们使用GWT作为前端。从Glassfish with EJB迁移到Google App Engine与Spring
2
A
回答
0
我在GAE上有2个live spring项目,并且可以推荐它。它很灵活,足够快:启动需要15-20秒(在GAE上),并处理约60-90ms(不带GAE API调用)的请求。
当然,您可以使用计划servlet,但这太难以维护了。
3
如果项目变得非常大,Spring也会启动缓慢。你拥有的豆越多,启动速度就越慢。
尽管我们有几百个EJB bean的项目,启动时间也不错(30到40秒)。我帮助了一段时间,回到了一个我猜测的春季项目几乎相同的大小,但花了几分钟才开始。因此,在你花2年时间用完全不同的框架重写所有内容之前,我强烈建议你自己先做一些基准测试。
也许只是在适当的硬件上花费一些钱是更经济的解决方案。快速的固态硬盘,足够的内存和合理快速的CPU可以创造奇迹。
如果只是关于开发体验,那么对于工作站来说,这不需要花费太多。我并不是主张只是硬件问题,而是为了提高启动速度而对一种完全不同的技术进行重大改写,以提高启动速度,而这些启动速度实际上无法改善,可能不是最聪明的做法。
5
在您开始如此大规模的迁移之前,请记住,您可以通过不使用注释并在XML中列出实体和ejb bean来提高启动性能。确保关闭注释扫描。就个人而言,我宁愿交易启动速度,以便不必维护详细的XML文件,但这可能对您有帮助。
你也可以选择开始使用JRebel。这将大大减少开发过程中所需的重新启动次数(大多数情况下将其降为零)。
如果只是转移到云端,您不必重写Spring。有很多产品可以支持EJB和一般的Java EE耳朵(例如OpenShift)。 GAE可能很酷,但很难完全远离GAE API。一旦你开始使用这些,你几乎被锁定在GAE中。作为一个个人笔记,我认为从EJB迁移到Spring是倒退的,这种趋势似乎是相反的。
相关问题
- 1. 如何将Wordpress从Google App Engine迁移
- 2. 将用户从Google App Engine迁移到Google OpenID
- 3. 的Java EJB迁移到Spring
- 4. 将Google App Engine应用程序从Django 0.96迁移到Django 1.2
- 5. 将数据从MySQL迁移到Google App Engine(Python)数据存储
- 6. 从glassfish迁移到tomee +
- 7. 如何将Django项目迁移到Google App Engine
- 8. 从App Engine迁移但仍然保持Google帐户的整合
- 9. Google App Engine(Java)+ Spring managed PersistenceManager
- 10. Google App Engine与Eclipse?
- 11. Google App Engine与Django 1.0.2
- 12. 迁移到Google Cloud Endpoints v2
- 13. Spring + App Engine + JSR303
- 14. Google App Engine HRD迁移需要多长时间?
- 15. 无法从spring 2.5迁移到spring 3.0
- 16. Google App Engine的db.UserProperty与rpxnow
- 17. 在App Engine中迁移key.id列表
- 18. 从Struts2迁移到Spring MVC
- 19. 从Struts迁移到Spring
- 20. 从Rails迁移到Java Spring
- 21. 从EJB 2实体Bean迁移到EJB3
- 22. 从App Engine Helper移植到App Engine修补程序
- 23. 将GlassFish V2.x迁移到GlassFish V3.0
- 24. Google App Engine
- 25. Google App Engine ASP.net
- 26. 将Flowscope迁移到Glassfish 4.1
- 27. SSLHandshakeError - Google App Engine
- 28. Google App Engine上的Spring Security 3.0?
- 29. Google App Engine上的Spring安全openid
- 30. Google App Engine Memcache