我有两个项目,利用这些技术来实现:
- 的Apache Tomcat
- 的PostgreSQL
- 休眠
- JPA
- 春
- 春季安全
- JAX WS
- GWT
- MVP4g
我只使用Spring将所有技术放在一起。
我有两个不同的应用程序,我想分享在这些应用程序中一起使用这些技术的经验。这两个应用程序在服务器上都没有困难的逻辑,即使在第二个应用程序中,所有的逻辑都放在了客户端上,而服务器只是将数据存储到/从数据库获取数据。GWT解决了这个问题。我认为,服务器上的最低计算是最适合云应用程序的。
1,第一个是监控系统,这是建来解决这些任务:
所以,主要的问题是获取和显示在图表中的数据的大金额,这是存储在一个表这个数据(每5天约1百万行)。我们必须在一张图上显示5k到20k点,并定期重新加载此图以从服务器获取实际信息。我们决定使用hibernate + jpa,但我认为这不是最好的方式,因为我们开始从获取和发送10k +行中获得问题。
所以,我们决定从春天+迁移休眠+ JPA到弹簧+ JDBC因为它比第一次更快,我的情况下使用更少的内存。因此,最好是不使用Hibernate如果您:
- 有几个entites的(在我的情况6)
- 具有大数据量
- 需要快速负载
一定要记住你需要得到尽可能从数据库,你可以更少的数据,使用不同的过滤器等(它没有我的情况下工作,因为我必须证明尽可能多的信息,我可以有操作员最好的统计数据,但你也可以用数学来平均一些数值,数字等)
至于客户端,谷歌图表与GWT工作得很好。当应用程序被放置在本地网络中时,我们在客户端载入大量数据时没有问题。 我在云端部署了应用程序(Jelastic),仅用于测试,并且由于在很短的时间内大量数据传输而面临缓慢的客户端负载。
2.第二个应用程序是用于管理销售,订单,联系人等云应用:
它始建于解决这些任务:
- 快速存储,获取,计算数据
- 用户提供简单而愉快的界面操作任务,上面
提到这个程序没有服务器端的逻辑。服务器只能从数据库中获取和存储数据。 我们devided应用与行家的帮助下几个模块(实体+ DAOS,春季服务和Web GWT)。
所以冬眠,因为我们有实体的大ammount的,而不是大表+ JPA是演技不错这里。此外,所有客户端网格都具有加载少于100行的默认过滤器,用户也必须过滤他的搜索。所以,在Hibernate + JPA使用在这个项目的情况下,我有相反的方向:
至于GWT的大金额,这是伟大的编写客户端纯Java的端逻辑,调试代码和刷新页面测试新创建的逻辑。 我也建议你使用MVP4g作为模型视图主持人框架建立GWT应用程序中的正确的方式:)它确实简化了开发过程和代码unerstanding。
至于tomcat的我们在这两个项目没有什么大的问题了。
我想这些基本的建议将帮助你建立好项目! 祝你好运!
感谢您的帮助!我们的新项目与您的第一个项目相似,但数据量会更少。因此,让我问几个问题。提到你在图表中显示数据。 Google Charts可以显示图表吗?我需要展示一个有节点和边缘的网络。 – 2012-02-04 09:02:54
第二个问题 - 我即将使用GWT 2.4。所以它嵌入了mvp框架。我应该选择哪一个和mvp4g? – 2012-02-04 09:05:28
对不起,我误解了关于图的问题,我不是母语的人,我在谈论图表:)只是注释时间表,区域和饼图。我不能说在GWT本地MVP是坏的,但我更喜欢mvp4g。你最好试试几个框架,然后决定哪一个更适合你。此外gwt平台是一个不错的。我可以添加更多内容 - 阅读gwt请求工厂 - 从gwt 2.1开始,将客户端连接到服务器的第二种方法。在下一个项目中,我将使用请求工厂而不是RPC。 GL! – BraginiNI 2012-02-04 19:47:55