当前位置:  开发笔记 > 编程语言 > 正文

针对高流量站点的scala的最佳Web数据库解决方案?

如何解决《针对高流量站点的scala的最佳Web数据库解决方案?》经验,为你挑选了2个好方法。

我负责重建一个每天约有250,000名访客的网站.我们想使用Scala,但它与Spring(在一些小的情况下)和Hibernate(如果你想使用我们这样做的scala集合,这里有一个主要且非常烦人的不匹配)不能很好地工作.

应用程序本身将有大约40-50个表.

除了Hibernate之外,是否有一个与Scala一起使用的ORM,并且与Hibernate一样高效且可靠?它是否也具有相同的功能,或者如果我们不使用Hibernate,我们是否会遇到漏洞抽象?

对于我们来说,使用更新并且似乎没有很多行业支持的框架将是一个很大的风险......同时,在使用Scala时,Hibernate是一个真正的编程方法.

1)Java Collection < - > Scala Collection绝对是痛苦的.还有更多的样板和废话要写.

2)IDE不会自动导入JavaConversions和Java接口......所以我们需要手动完成.优化IDEA中的进口将破坏所有手动工作.

3)在域对象和dao类中始终来回转换也会产生性能成本.

4)更不用说需要大量的铸造,这会产生像罪一样难看的代码.

我实际上很乐意编写我自己的专为scala量身定制的orm,但显然这实际上超出了我们项目的范围.

那么最好的方法是什么?



1> Vasil Remeni..:

    你有没有考虑过Lift Framework?它有一个非常好的持久性模块 - Lift Record(在你正在搜索的Scala中实现ActiveRecord概念).
    此外,如果你决定使用NOSQL(它可以比传统的RDBMS更好地满足你的高吞吐量需求),Lift有Mongo DB,Redis和Couch的模块.

    另一个经过验证的Scala ORM解决方案是JPA.您可以在Scala中自由使用JPA注释.

    这两种解决方案都非常可靠并且有企业支持(据我所知).

    PS值得一提 - 如今,Lift Framework是Scala Web框架的一种行业标准.它有着良好的声誉,并且已经有一些好的入门书籍.


尊重大卫和其他电梯社区,它真的不吸引我.事情很奇怪,而且太不同了.有些事情只是跳出来,看起来也不一致.我在几个月前尝试了几次......但是代码库不断发展,示例"开始"应用程序并不是一直有效,因为它们是在下一个版本发布前一两个月写的.使用scala 2.8,事情会发生更大的变化.我想要一些更传统的 - 精益,高效,干净,简洁,也是传统的.

2> KushalP..:

看看Circumflex.用Scala编写的一个ORM,用于Scala.

推荐阅读
围脖上的博博_771
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有