Scala 框架选择

我所知道的Scala持久层框架有:

1、Slick (typesafe出品)

2、Squeryl

3、Anorm(Play的持久层)

4、ScalaActiveRecord (基于Squeryl之上)

5、circumflex-orm

6、activate-framework(不只是scala版的hibernate,支持async db)



web框架的话

1、Spray(build on akka,完全异步,非阻塞,非常有前景,适合REST后端程序)

2、Play(还不是很习惯)

3、Scalatra(对akka,squeryl等都有现成集成,适合需要view层的)

4、Lift



我的选择:

1、对于api层

采用Spray+Akka+Slick/ScalaActiveRecord



2、对于普通web应用

采用Scalatra/Spray+Slick/ScalaActiveRecord



采用ScalaActiveRecord的原因:

1、基于Squeryl的rails风格

2、可集成数据库连接池(BoneCP)

3、可进行事务控制(支持optimistic locking)



采用Slick的原因:

1、typesafe官方产品

2、可集成数据库连接池

     参考 https://gist.github.com/filipelenfers/7914993

     参考 http://slick.typesafe.com/doc/2.1.0/connection.html#using-a-datasource

3、事务控制(目前好像不支持optimistic locking)

      参考

   

spray集成actor的参考架构

spray-akka-todomvc


来自:http://my.oschina.net/scipio/blog/302465

猜你喜欢

转载自ananbb.iteye.com/blog/2372944